import type { MaybePromise } from '../fields/field-value.js'; import type { EditorHost, HostApplyContext, HostBatchUpdate, HostRecordEntry, HostReadContext, HostRefreshCapability } from '../host/editor-host.js'; type HostResult = T | PromiseLike; /** Consumer callbacks used by a Standalone Host. */ export interface StandaloneHostOptions { readonly read: (target: TTarget, context?: Readonly) => MaybePromise>; readonly applyCreate?: (row: TRow, context: Readonly) => HostResult; readonly applyUpdate?: (target: TTarget, row: TRow, context: Readonly) => HostResult; readonly applyUpdates?: (updates: readonly Readonly>[], context: Readonly) => HostResult; readonly applyRemove?: (targets: readonly TTarget[], context: Readonly) => HostResult; readonly refresh?: (signal: AbortSignal) => HostResult; readonly records?: () => Iterable>>; readonly eventTarget?: EventTarget; readonly ownershipKey?: object; } /** Host bridge for consumer-owned records without a table or grid runtime. */ export declare class StandaloneHost implements EditorHost, HostRefreshCapability { #private; private readonly options; readonly eventTarget: EventTarget; readonly ownershipKey: object; readonly entries: (() => Iterable>>) | undefined; readonly applyUpdates: ((updates: readonly Readonly>[], context: Readonly) => Promise) | undefined; constructor(options: StandaloneHostOptions); read(target: TTarget, context?: Readonly): MaybePromise>; applyCreate(row: TRow, context: Readonly): Promise; applyUpdate(target: TTarget, row: TRow, context: Readonly): Promise; applyRemove(targets: readonly TTarget[], context: Readonly): Promise; refresh(signal: AbortSignal, action?: () => Promise): Promise; destroy(): void; } export {};