import { Component, ComponentReturnType } from './component-class'; import { Cell } from './reactive'; import { IfCondition } from './control-flow/if'; import { SuspenseContext } from './suspense-utils'; export { SUSPENSE_CONTEXT, followPromise, type SuspenseContext, } from './suspense-utils'; export declare function lazy(factory: () => Promise<{ default: T; }>): T; /** * Props for the Suspense component */ export type SuspenseArgs = { Args: { /** Component to render while async content is loading */ fallback: ComponentReturnType; }; Blocks: { /** Default block containing async content */ default: []; }; }; /** * Suspense boundary component that shows a fallback while async children are loading. * Implements SuspenseContext to track pending async operations. */ export declare class Suspense extends Component implements SuspenseContext { constructor(); pendingAmountCell: Cell; isReleasedCell: Cell; get pendingAmount(): number; get isReleased(): boolean; start(): void; end(): void; get fallback(): ComponentReturnType; _template(): Component | IfCondition | import('./control-flow/list').AsyncListComponent | import('./control-flow/list').SyncListComponent; }