import { PublishResult } from '../api';
import { BasePart, Part } from '.';
import { TemplateResult } from '@blinkk/selective-edit';
import { FormDialogModal } from '../ui/modal';
import { EditorState } from '../state';
import { FieldConfig } from '@blinkk/selective-edit/dist/src/selective/field';
import { LiveEditor } from '../editor';
import TimeAgo from 'javascript-time-ago';
export interface OverviewPartConfig {
    /**
     * State class for working with editor state.
     */
    state: EditorState;
}
export declare class OverviewPart extends BasePart implements Part {
    config: OverviewPartConfig;
    isPendingPublish?: boolean;
    timeAgo: TimeAgo;
    constructor(config: OverviewPartConfig);
    classesForPart(): Record<string, boolean>;
    protected getOrCreateModalPublish(editor: LiveEditor, fields: Array<FieldConfig>): FormDialogModal;
    handlePublishClick(evt: Event, editor: LiveEditor): void;
    loadProject(): void;
    loadWorkspace(): void;
    showPublishResult(editor: LiveEditor, result: PublishResult): void;
    template(editor: LiveEditor): TemplateResult;
    templateMenu(editor: LiveEditor): TemplateResult;
    templateProject(editor: LiveEditor): TemplateResult;
    templatePublish(editor: LiveEditor): TemplateResult;
    templatePublishWorkspace(editor: LiveEditor): TemplateResult;
    templateWorkspace(editor: LiveEditor): TemplateResult;
}
