import { Signal } from '@preact/signals-core'; import { Matrix4, Vector2Tuple } from 'three'; import { Bucket } from '../allocation/sorted-buckets.js'; import { ClippingRect } from '../clipping.js'; import { Inset } from '../flex/node.js'; import { InstancedPanelGroup, PanelGroupProperties } from './instanced-panel-group.js'; import { ColorRepresentation } from '../utils.js'; import { OrderInfo } from '../order.js'; import { PanelMaterialConfig } from './panel-material.js'; import { Properties } from '../properties/index.js'; import { RootContext } from '../context.js'; export type PanelProperties = { borderTopLeftRadius?: number | string; borderTopRightRadius?: number | string; borderBottomLeftRadius?: number | string; borderBottomRightRadius?: number | string; opacity?: number | `${number}%`; backgroundColor?: ColorRepresentation; borderColor?: ColorRepresentation; borderBend?: number | `${number}%`; }; export declare function setupInstancedPanel(properties: Properties, root: Signal, orderInfo: Signal, panelGroupDependencies: Signal>, panelMatrix: Signal, size: Signal, borderInset: Signal, clippingRect: Signal | undefined, isVisible: Signal, materialConfig: PanelMaterialConfig, abortSignal: AbortSignal): void; export declare function computedPanelMatrix(properties: Properties, matrixSignal: Signal, sizeSignal: Signal, offsetSignal?: Signal): import("@preact/signals-core").ReadonlySignal; export declare class InstancedPanel { private readonly group; private readonly minorIndex; private readonly matrix; private readonly size; private readonly borderInset; private readonly clippingRect; readonly materialConfig: PanelMaterialConfig; private indexInBucket?; private bucket?; private insertedIntoGroup; private active; private abortController?; constructor(properties: Properties, group: InstancedPanelGroup, minorIndex: number, matrix: Signal, size: Signal, borderInset: Signal, clippingRect: Signal | undefined, isVisible: Signal, materialConfig: PanelMaterialConfig, abortSignal: AbortSignal); setIndexInBucket(index: number): void; private getIndexInBuffer; activate(bucket: Bucket, index: number): void; private requestShow; private hide; }