import { effect, ReadonlySignal, Signal } from '@preact/signals-core'; import { Object3D, Vector2Tuple, Color, Vector3Tuple, Vector3, Matrix4, Vector4Tuple } from 'three'; import { Inset } from './flex/node.js'; import { Properties } from './properties/index.js'; import { EventHandlersProperties } from './events.js'; import { AllowedPointerEventsType } from './panel/interaction-panel-mesh.js'; import { Component } from './components/component.js'; import { Container } from './components/container.js'; import { RootContext } from './context.js'; export type Fix_TS_56_Float32Array = Float32Array; export declare function searchFor(from: Component | Object3D, _class: { new (...args: Array): T; }, maxSteps: number, allowNonUikit?: boolean): T | undefined; export declare function computedGlobalMatrix(parentMatrix: Signal, localMatrix: Signal): Signal; export type VisibilityProperties = { visibility?: 'visible' | 'hidden'; }; export declare function computedIsVisible(component: Component, isClipped: Signal | undefined, properties: Properties): ReadonlySignal; export declare function loadResourceWithParams>(target: Signal, fn: (param: P, ...additional: A) => Promise, cleanup: ((value: R) => void) | undefined, abortSignal: AbortSignal, param: Signal

| P, ...additionals: A): void; export declare function computedHandlers(properties: Properties, starProperties: Properties, hoveredSignal: Signal>, activeSignal: Signal>, dynamicHandlers?: Signal): ReadonlySignal; export declare function computedAncestorsHaveListeners(parent: Signal, handlers: ReadonlySignal): ReadonlySignal; export declare function addHandlers(target: EventHandlersProperties, handlers: EventHandlersProperties | undefined): void; export declare function addHandler void; }, K extends keyof T>(key: K, target: T, handler: T[K]): void; export declare function setupMatrixWorldUpdate(component: Component, rootSignal: Signal, globalPanelMatrixSignal: Signal | undefined, abortSignal: AbortSignal): void; export type OutgoingDefaultProperties = { renderOrder: ReadonlySignal; depthTest: ReadonlySignal; depthWrite: ReadonlySignal; pointerEvents: ReadonlySignal<'none' | 'auto' | 'listener'>; pointerEventsType: ReadonlySignal; pointerEventsOrder: ReadonlySignal; }; export declare function setupPointerEvents(component: Component, canHaveNonUikitChildren: boolean): void; export type ColorRepresentation = Color | string | number | Vector3Tuple | Vector4Tuple; export declare function abortableEffect(fn: Parameters[0], abortSignal: AbortSignal): void; export declare const alignmentXMap: { left: number; center: number; middle: number; right: number; }; export declare const alignmentYMap: { top: number; center: number; middle: number; bottom: number; }; export declare const alignmentZMap: { back: number; center: number; middle: number; front: number; }; /** * calculates the offsetX, offsetY, and scale to fit content with size [aspectRatio, 1] inside */ export declare function fitNormalizedContentInside(offsetTarget: Vector3, scaleTarget: Vector3, size: Signal, paddingInset: Signal, borderInset: Signal, pixelSize: number, aspectRatio: number): void; export declare function readReactive(value: T | 'initial' | ReadonlySignal): T; export declare function computedBorderInset(properties: Properties, keys: ReadonlyArray): Signal; export declare function withOpacity(value: ReadonlySignal | ColorRepresentation, opacity: number | Signal): ReadonlySignal; type UnionToIntersection = (U extends any ? (x: U) => void : never) extends (x: infer I) => void ? I : never; type IntersectValues> = UnionToIntersection; type RecursivePartial = T extends Signal ? T : { [K in keyof T]?: RecursivePartial; }; export type UnionizeVariants> = Record>>; /** * assumes component.root.component.parent.matrixWorld and component.root.component.matrix is updated */ export declare function computeWorldToGlobalMatrix(root: Pick, target: Matrix4): void; export {};