import { EditorMode, Permission } from '../../../../types/src/content-builder';
import { AddTemplateRequest, AddTemplateResponse, GetAdhocPropertiesResponse, GetBlockTemplatesResponse, GetBlockTypesResponse, GetPagesForBlockTemplateResponse, GetTemplatesResponse, UpdateTemplateRequest, UpdateTemplateResponse } from './cms5.types';

export declare function apiAddTemplate({ blockType, description, name, settings, }: AddTemplateRequest): Promise<AddTemplateResponse | null>;
export declare function apiGetTemplates({ ids }: {
    ids: string[];
}): Promise<GetTemplatesResponse>;
export declare function apiUpdateTemplate({ description, id, name, settings, }: UpdateTemplateRequest): Promise<UpdateTemplateResponse | null>;
export declare function apiDeleteTemplate({ id }: {
    id: string;
}): Promise<boolean>;
export declare function apiGetPermission({ id }: {
    id: string;
}): Promise<"" | Permission>;
export declare function apiGetTemplatesForType(params?: {
    type: string;
}): Promise<GetBlockTemplatesResponse>;
export declare function apiGetBlockTypes({ excludeBlocksWithNoTemplates, }: {
    excludeBlocksWithNoTemplates: boolean;
}): Promise<GetBlockTypesResponse>;
export declare function apiGetEditorMode({ id }: {
    id?: string;
}): Promise<EditorMode>;
export declare function apiGetAdhocProperties({ type }: {
    type: string;
}): Promise<GetAdhocPropertiesResponse>;
export declare function apiGetPagesForBlockTemplate({ id }: {
    id: string;
}): Promise<GetPagesForBlockTemplateResponse>;
