///
import type { BlockService } from '@blocksuite/block-std';
import type { EventName, UIEventHandler } from '@blocksuite/block-std';
import type { BaseSelection } from '@blocksuite/block-std';
import type { BlockModel } from '@blocksuite/store';
import type { Doc } from '@blocksuite/store';
import { type PropertyValues, type TemplateResult } from 'lit';
import type { EditorHost } from './lit-host.js';
import { ShadowlessElement } from './shadowless-element.js';
import type { WidgetElement } from './widget-element.js';
declare const BlockElement_base: typeof ShadowlessElement & import("@blocksuite/global/utils").Constructor;
export declare class BlockElement extends BlockElement_base {
host: EditorHost;
model: Model;
content: TemplateResult | null;
widgets: Record;
doc: Doc;
dirty: boolean;
selected: BaseSelection | null;
service: Service;
path: string[];
get parentPath(): string[];
get parentBlockElement(): BlockElement, BlockService>, string>;
get childBlockElements(): BlockElement, BlockService>, string>[];
get rootElement(): BlockElement, BlockService>, string>;
get topContenteditableElement(): BlockElement | null;
get flavour(): string;
get widgetElements(): Partial>;
get selection(): import("@blocksuite/block-std").SelectionManager;
get std(): import("@blocksuite/block-std").BlockStdScope;
get isVersionMismatch(): boolean;
handleEvent: (name: EventName, handler: UIEventHandler, options?: {
global?: boolean;
flavour?: boolean;
}) => void;
bindHotKey(keymap: Record, options?: {
global?: boolean;
flavour?: boolean;
}): void;
renderChildren: (model: BlockModel) => TemplateResult;
protected getUpdateComplete(): Promise;
protected update(changedProperties: PropertyValues): void;
connectedCallback(): void;
disconnectedCallback(): void;
renderBlock(): unknown;
renderVersionMismatch(expectedVersion: number, actualVersion: number): TemplateResult;
render(): unknown;
}
export {};
//# sourceMappingURL=block-element.d.ts.map