import type { StreamingSlot, StreamingSlotPatchPayload } from '../utils/streamingSlots';
export type StaticStreamingSlotResolver = () => Promise<StreamingSlotPatchPayload> | StreamingSlotPatchPayload;
export type StaticStreamingSlotDefinition = {
    resolve: StaticStreamingSlotResolver;
    timeoutMs?: number;
    errorHtml?: string;
};
export type StaticStreamingSlotDefinitions = Record<string, StaticStreamingSlotResolver | StaticStreamingSlotDefinition>;
export declare const defineStaticStreamingSlots: <const T extends StaticStreamingSlotDefinitions>(slots: T) => T;
type StaticStreamingTagDefinition = {
    errorHtml?: string;
    fallbackHtml: string;
    id: string;
    resolver: string;
    timeoutMs?: number;
};
export declare const extractStaticStreamingTags: (html: string) => StaticStreamingTagDefinition[];
export declare const loadStaticStreamingSlots: (pagePath: string, html: string) => Promise<StreamingSlot[]>;
export {};
