import type { LiveComponent, LiveElement } from '@use-gpu/live'; import type { Blending, OffscreenRenderContext, ColorSpace, TextureSource, TextureTarget } from '@use-gpu/core'; export type RenderTargetProps = { width?: number; height?: number; samples?: number; resolution?: number; overscan?: number; history?: number; mip?: number | boolean; format?: GPUTextureFormat | null; depthStencil?: GPUTextureFormat | null; depthHistory?: boolean; sampler?: Partial; variant?: string; absolute?: boolean; unresolved?: boolean; backgroundColor?: GPUColor; blend?: Blending | GPUBlendState | null; colorSpace?: ColorSpace; colorInput?: ColorSpace; label?: string; hint?: string | number; render?: (rttContext: OffscreenRenderContext) => LiveElement; children?: LiveElement | ((rttContext: OffscreenRenderContext) => LiveElement); then?: (target: TextureTarget) => LiveElement; }; /** Off-screen render target. Place `@{}` directly inside, or leave empty to use yielded target with `@{}`. */ export declare const RenderTarget: LiveComponent; export declare const useCombinedRenderTarget: (targets: OffscreenRenderContext[]) => { colorStates: GPUColorTargetState[]; viewAttachments: { colorAttachments: GPURenderPassColorAttachment[]; depthStencilAttachment?: GPURenderPassDepthStencilAttachment; }[]; sources: (TextureSource & { history?: TextureSource[]; swap: () => void; })[]; width: number; height: number; pixelRatio: number; samples: number; device: GPUDevice; gpuContext: GPUCanvasContext; colorSpace: ColorSpace; colorInput: ColorSpace; depthStencilState?: GPUDepthStencilState; viewType: import("@use-gpu/core").RenderViewType; swap?: ((() => void) & (() => void)) | undefined; depth?: (TextureSource & { history?: TextureSource[]; swap: () => void; }) | undefined; source: TextureSource & { history?: TextureSource[]; swap: () => void; }; }; export declare const getCombinedRenderTarget: (targets: OffscreenRenderContext[]) => { colorStates: GPUColorTargetState[]; viewAttachments: { colorAttachments: GPURenderPassColorAttachment[]; depthStencilAttachment?: GPURenderPassDepthStencilAttachment; }[]; sources: (TextureSource & { history?: TextureSource[]; swap: () => void; })[]; width: number; height: number; pixelRatio: number; samples: number; device: GPUDevice; gpuContext: GPUCanvasContext; colorSpace: ColorSpace; colorInput: ColorSpace; depthStencilState?: GPUDepthStencilState; viewType: import("@use-gpu/core").RenderViewType; swap?: ((() => void) & (() => void)) | undefined; depth?: (TextureSource & { history?: TextureSource[]; swap: () => void; }) | undefined; source: TextureSource & { history?: TextureSource[]; swap: () => void; }; };