/// <reference types="@webgpu/types" />
import type { Snippet } from 'svelte';
import type { HTMLCanvasAttributes } from 'svelte/elements';
import type { FragMaterial } from '../core/material';
import { type MotionGPUErrorReport } from '../core/error-report';
import type { AnyPass, ColorPipelineOptions, RenderMode, RenderTargetDefinitionMap } from '../core/types';
interface FragCanvasOwnProps {
    material: FragMaterial;
    renderTargets?: RenderTargetDefinitionMap;
    passes?: AnyPass[];
    clearColor?: [number, number, number, number];
    color?: ColorPipelineOptions;
    renderMode?: RenderMode;
    autoRender?: boolean;
    maxDelta?: number;
    adapterOptions?: GPURequestAdapterOptions;
    deviceDescriptor?: GPUDeviceDescriptor;
    dpr?: number;
    showErrorOverlay?: boolean;
    errorRenderer?: Snippet<[MotionGPUErrorReport]>;
    onError?: (report: MotionGPUErrorReport) => void;
    errorHistoryLimit?: number;
    onErrorHistory?: (history: MotionGPUErrorReport[]) => void;
    canvas?: HTMLCanvasElement | undefined;
    children?: Snippet;
}
type BlockedCanvasProps = {
    height?: undefined;
    width?: undefined;
};
type Props = FragCanvasOwnProps & Omit<HTMLCanvasAttributes, keyof FragCanvasOwnProps | keyof BlockedCanvasProps | 'color'> & BlockedCanvasProps;
declare const FragCanvas: import("svelte").Component<Props, {}, "canvas">;
type FragCanvas = ReturnType<typeof FragCanvas>;
export default FragCanvas;
//# sourceMappingURL=FragCanvas.svelte.d.ts.map