import { type Fixed } from "./fixers.js";
import { ItemView, type ViewStateResult, type WorkspaceLeaf } from "obsidian";
import { UnnamespacedID } from "./obsidian.js";
import type { PluginContext } from "./plugin.js";
import type { TranslationKey } from "./i18n.js";
export declare class DocumentationMarkdownView extends ItemView {
    #private;
    protected readonly context: PluginContext;
    static readonly type: UnnamespacedID<"documentation">;
    protected readonly element: HTMLDivElement;
    constructor(context: PluginContext, leaf: WorkspaceLeaf);
    protected get state(): DocumentationMarkdownView.State;
    protected set state(value: DocumentationMarkdownView.State);
    getViewType(): string;
    getDisplayText(): string;
    getIcon(): string;
    setState(state: unknown, result: ViewStateResult): Promise<void>;
    getState(): unknown;
    protected onOpen(): Promise<void>;
}
declare class Registered0 {
    readonly context: PluginContext;
    constructor(context: PluginContext);
    open(active: boolean, state: DocumentationMarkdownView.State): Promise<void>;
}
export declare namespace DocumentationMarkdownView {
    type Registered = Registered0;
    function register(context: PluginContext): Registered;
    interface State {
        readonly data: string;
        readonly displayTextI18nKey: TranslationKey | null;
        readonly iconI18nKey: TranslationKey | null;
    }
    namespace State {
        const DEFAULT: State;
        function fix(self0: unknown): Fixed<State>;
    }
}
export {};
//# sourceMappingURL=documentation.d.ts.map