import { type Element } from '@makeswift/controls'; import { type Action, type UnknownAction, type DocumentPayload } from '../actions'; export { type Data, type ElementData, type ElementReference, type Element, isElementReference, } from '@makeswift/controls'; export type DocumentReference = { key: string; }; export declare function createDocumentReference(key: string): DocumentReference; type BaseDocument = { key: string; rootElement: Element; locale: string | null; }; export declare const EMBEDDED_DOCUMENT_TYPE: "EMBEDDED_DOCUMENT"; export type EmbeddedDocument = { key: string; locale: string | null; id: string; type: string; name: string; rootElement: Element; meta: { allowLocaleFallback: boolean; requestedLocale: string | null; description?: string; }; __type: typeof EMBEDDED_DOCUMENT_TYPE; }; export type Document = BaseDocument | EmbeddedDocument; export declare function getRootElement(document: Document | DocumentPayload): Element; export declare function createBaseDocument(key: string, rootElement: Element, locale: string | null): Document; export type State = Map; export declare function getInitialState({ documents }?: { documents?: Document[]; }): State; export declare function getDocuments(state: State): State; export declare function getDocument(state: State, documentKey: string): Document | null; export declare function reducer(state: State | undefined, action: Action | UnknownAction): State; //# sourceMappingURL=read-only-documents.d.ts.map