type ReframedOptions = { pierced: boolean; shadowRoot: ShadowRoot; wfDocumentElement: HTMLElement; bound: boolean; headers?: HeadersInit; name: string; }; /** * Creates a new reframed context for a fragment that virtualizes the DOM and browser APIs using a monkey-patched hidden iframe. * * The fragment will be initialized by fetching the initial html from `reframedSrc` unless `options.pierced` is set to true in which case `option.shadowRoot` will be used to initialize the fragment. * * The window.location in the reframed context is always initialized to `reframedSrc`. * * @param reframedSrc source url of the reframed context * @param options options to configure the reframed context * @returns */ export declare function reframed(reframedSrc: string, options: ReframedOptions): { iframe: HTMLIFrameElement; ready: Promise; }; type ReframedMetadata = { /** * Indicates what the value the iframe's document readyState should be. * * Note that we can't simply monkey patch this to the main document (since the iframe needs to have its own behavior regarding this state), * so we need to directly manage this state ourselves. */ iframeDocumentReadyState: DocumentReadyState; iframe: HTMLIFrameElement; }; export declare const reframedMetadataSymbol: unique symbol; export type ReframedShadowRoot = ShadowRoot & { [reframedMetadataSymbol]: ReframedMetadata; }; export {};