export type EntryEditorDriver = {
    fetchEntry?: (siteId: string, type: string, entryId: string) => Promise<unknown>;
    listBlocks?: (siteId: string, pageId: string) => Promise<unknown[]>;
    createBlock?: (siteId: string, pageId: string, input: Record<string, unknown>) => Promise<unknown>;
    reorderBlocks?: (siteId: string, pageId: string, order: Array<{
        id: string;
        position: number;
    }>) => Promise<void>;
    deleteBlock?: (siteId: string, blockId: string) => Promise<void>;
    saveBlockContent?: (siteId: string, blockId: string, content: Record<string, unknown>) => Promise<unknown>;
    updateMetadata?: (siteId: string, type: string, entryId: string, payload: Record<string, unknown>) => Promise<unknown>;
    publish?: (siteId: string, type: string, entryId: string, payload?: unknown) => Promise<void>;
    discard?: (siteId: string, type: string, entryId: string) => Promise<void>;
};
