import { type ScanNode } from '@pascal-app/core'; import { type CaptureSessionDescriptor, type CaptureSource, type CaptureSourceResolver, type CaptureStreamDescriptor, type CaptureStreamPacket } from '@pascal-app/core/capture'; import { type ComponentType } from 'react'; export type CaptureMeshPresentation = { dollhouse?: boolean; previewMaterial?: 'clay' | 'recorded'; }; export type CaptureStreamRendererProps = { artifactUrl: string | null; descriptor: CaptureSessionDescriptor; meshPresentation?: CaptureMeshPresentation; packets: readonly CaptureStreamPacket[]; scan: ScanNode; source: CaptureSource; stream: CaptureStreamDescriptor; streamEpoch: string; }; export type CaptureStreamRenderer = ComponentType; export type CaptureRuntimeErrorContext = { phase: 'source'; scanId: ScanNode['id']; sessionId: string; } | { layerKey: string; phase: 'stream'; scanId: ScanNode['id']; sessionId: string; streamId: string; streamKind: string; }; export type CaptureRuntimeProps = { defaultLayerVisibility?: Readonly>; maxPacketsPerStream?: number; onError?: (error: Error, context: CaptureRuntimeErrorContext) => void; renderers?: Readonly>; resolveSource: CaptureSourceResolver; retryKey?: number | string; }; export declare function CaptureRuntime({ defaultLayerVisibility, maxPacketsPerStream, onError, renderers, resolveSource, retryKey, }: CaptureRuntimeProps): import("react").JSX.Element; export declare function CaptureStreamLayer({ descriptor, meshPresentation, packets, renderers, scan, source, stream, streamEpoch, }: Omit & { renderers: Readonly>; }): import("react").JSX.Element | null; //# sourceMappingURL=capture-runtime.d.ts.map