alinea
Version:
Headless git-based CMS
24 lines (23 loc) • 1.01 kB
TypeScript
import { CMS } from 'alinea/core/CMS';
import type { Config } from 'alinea/core/Config';
import type { UploadResponse } from 'alinea/core/Connection';
import type { Mutation } from 'alinea/core/db/Mutation';
import type { GraphQuery } from 'alinea/core/Graph';
import type { User } from 'alinea/core/User';
export interface PreviewProps {
widget?: boolean;
workspace?: string;
root?: string;
}
export declare class NextCMS<Definition extends Config = Config> extends CMS<Definition> {
#private;
constructor(config: Definition);
resolve<Query extends GraphQuery>(query: Query): Promise<any>;
user(): Promise<User | undefined>;
mutate(mutations: Array<Mutation>): Promise<{
sha: string;
}>;
prepareUpload(file: string): Promise<UploadResponse>;
previews: ({ widget, workspace, root }: PreviewProps) => Promise<import("react/jsx-runtime").JSX.Element | null>;
}
export declare function createCMS<Definition extends Config>(config: Definition): NextCMS<Definition>;