import { AmagakiProjectTypeApi, ApiProjectTypes, AuthenticationData, DeviceData, EditorFileData, EditorPreviewSettings, EmptyData, FileData, GrowProjectTypeApi, LiveEditorApiComponent, OnboardingInfo, PartialData, PreviewSettings, ProjectData, PublishResult, WorkspaceData } from '../editor/api'; interface SimulateNetworkOptions { /** * Maximum time a simulated request should take. */ maxResponseMs?: number; /** * Minimum time a simulated request should take. */ minResponseMs?: number; /** * When true the network simulation is skipped and response instantly. */ noNetworkSimulation?: boolean; } export declare type ExampleApiOptions = SimulateNetworkOptions; /** * Example api that returns data through a 'simulated' network. */ export declare class ExampleApi implements LiveEditorApiComponent { errorController: ErrorController; workflow: WorkspaceWorkflow; options?: ExampleApiOptions; projectTypes: ApiProjectTypes; constructor(options?: ExampleApiOptions); checkAuth(): boolean; checkOnboarding(): Promise; clearAuth(): Promise; copyFile(originalPath: string, path: string): Promise; createFile(path: string): Promise; createWorkspace(base: WorkspaceData, workspace: string): Promise; deleteFile(file: FileData): Promise; getAuthentication(): Promise; getDevices(): Promise>; getFile(file: FileData): Promise; getFiles(): Promise>; getFileUrl(file: FileData): Promise; getPreviewConfig(settings: EditorPreviewSettings, workspace: WorkspaceData): Promise; getProject(): Promise; getWorkspace(): Promise; getWorkspaces(): Promise>; loadWorkspace(workspace: WorkspaceData): Promise; publish(workspace: WorkspaceData, data?: Record): Promise; saveFile(file: EditorFileData, isRawEdit: boolean): Promise; updateOnboarding(info: OnboardingInfo): Promise; uploadFile(file: File, meta?: Record): Promise; } export declare class ExampleAmagakiApi implements AmagakiProjectTypeApi { errorController: ErrorController; options?: ExampleApiOptions; constructor(errorController: ErrorController, options?: ExampleApiOptions); getPartials(): Promise>; } export declare class ExampleGrowApi implements GrowProjectTypeApi { errorController: ErrorController; options?: ExampleApiOptions; constructor(errorController: ErrorController, options?: ExampleApiOptions); getPartials(): Promise>; getStrings(): Promise>; } export declare class ErrorController { errorMethods: Set; constructor(); makeError(methodName: string): Set; 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" } export {};