@archer-edu/dxp-directus-cli
Version:
42 lines (41 loc) • 1.46 kB
TypeScript
import commander from "commander";
import { mapPage, writePage } from "./pull-pages";
type PushPageOptions = {
siteId?: string;
token?: string;
downloadImages?: string;
debug?: boolean;
dryRun?: boolean;
cwd?: string;
logger?: (message: string) => void;
repository?: PushPageRepository;
mapReadBackPage?: typeof mapPage;
writeReadBackPage?: typeof writePage;
};
type PushPageRepository = {
getSiteByKey(siteId: string): Promise<{
key: string;
name?: string;
managed_pages?: boolean;
active?: boolean;
} | undefined>;
resolveParentPageChain(siteId: string, parentPathSegments: string[]): Promise<string | null>;
findPageBySiteParentAndSlug(siteId: string, parentPageId: string | null, slug: string): Promise<{
id: string;
slug?: string;
title?: string;
} | undefined>;
getMaxSiblingSort(siteId: string, parentPageId: string | null): Promise<number>;
createPage(payload: Record<string, any>): Promise<any>;
getPageForReadBack(pageId: string): Promise<any>;
listPageKeys(siteId: string): Promise<any[]>;
};
export type PushPageResult = {
dryRun: boolean;
siteId: string;
payload: Record<string, any>;
createdPage?: any;
};
declare const register: (program: commander.Command) => void;
export default register;
export declare function runPushPage(filePath: string, options?: PushPageOptions): Promise<PushPageResult>;