@blinkk/editor
Version:
Structured content editor with live previews.
55 lines (54 loc) • 2.44 kB
TypeScript
import { AmagakiProjectTypeApi, ApiProjectTypes, DeviceData, EditorFileData, EmptyData, FileData, GrowProjectTypeApi, LiveEditorApiComponent, PartialData, ProjectData, PublishResult, WorkspaceData } from '../editor/api';
/**
* Example api that returns data through a 'simulated' network.
*/
export declare class ExampleApi implements LiveEditorApiComponent {
errorController: ErrorController;
workflow: WorkspaceWorkflow;
projectTypes: ApiProjectTypes;
constructor();
checkAuth(): boolean;
copyFile(originalPath: string, path: string): Promise<FileData>;
createFile(path: string): Promise<FileData>;
createWorkspace(base: WorkspaceData, workspace: string): Promise<WorkspaceData>;
deleteFile(file: FileData): Promise<EmptyData>;
getDevices(): Promise<Array<DeviceData>>;
getFile(file: FileData): Promise<EditorFileData>;
getFiles(): Promise<Array<FileData>>;
getFileUrl(file: FileData): Promise<FileData>;
getProject(): Promise<ProjectData>;
getWorkspace(): Promise<WorkspaceData>;
getWorkspaces(): Promise<Array<WorkspaceData>>;
loadWorkspace(workspace: WorkspaceData): Promise<WorkspaceData>;
publish(workspace: WorkspaceData, data?: Record<string, any>): Promise<PublishResult>;
saveFile(file: EditorFileData, isRawEdit: boolean): Promise<EditorFileData>;
uploadFile(file: File, meta?: Record<string, any>): Promise<FileData>;
}
export declare class ExampleAmagakiApi implements AmagakiProjectTypeApi {
errorController: ErrorController;
constructor(errorController: ErrorController);
getPartials(): Promise<Record<string, PartialData>>;
}
export declare class ExampleGrowApi implements GrowProjectTypeApi {
errorController: ErrorController;
constructor(errorController: ErrorController);
getPartials(): Promise<Record<string, PartialData>>;
getStrings(): Promise<Record<string, any>>;
}
export declare class ErrorController {
errorMethods: Set<string>;
constructor();
makeError(methodName: string): Set<string>;
makeSuccess(methodName: string): boolean;
shouldError(methodName: string): boolean;
toggleError(methodName: string): void;
}
export declare enum WorkspaceWorkflow {
Failure = "failure",
NoChanges = "noChanges",
NoPublish = "noPublish",
Pending = "pending",
Success = "success",
SuccessNoFields = "successNoFields",
SuccessChangeWorkspace = "successChangeWorkspace"
}