import { OutputProfile } from '../output/profile.js';
import { Editor } from './editor.js';
import { CreationCustomPreviewProvider } from '../preview/creation-preview-provider.js';
import WorkspaceViewProvider from './workspace/index.js';
import DefaultWorkspaceViewProvider from './workspace/default.js';
export declare abstract class EditorProfile {
    abstract workspaceViewProvider?: WorkspaceViewProvider;
    abstract onInstall(editor: Editor): void;
    abstract parts?: any[];
    abstract plugins?: any[];
    /**
     * Configures the toolbox for the editor.
     * To set the toolbox to default entries:
     * `this.toolbox = Object.values(APIs);`
     * To set your own order:
     * `this.toolbox = [APIs.app, APIs.ctx etc];`
     */
    abstract toolbox?: any[];
    abstract outputProfile?: OutputProfile;
    abstract creationPreviewProvider?: CreationCustomPreviewProvider;
}
export declare class DefaultEditorProfile extends EditorProfile {
    parts?: any[];
    plugins?: any[];
    toolbox?: any[];
    workspaceViewProvider?: DefaultWorkspaceViewProvider;
    creationPreviewProvider?: CreationCustomPreviewProvider;
    outputProfile?: OutputProfile;
    onInstall(editor: Editor): void;
}
export default EditorProfile;
