import { type QuadraticIterationOptions } from './complex-quadratic.js'; import type { Point3 } from './sample.js'; export type TricomplexPlatonicSlice3Id = 'airbrot' | 'firebrot' | 'earthbrot'; export interface TricomplexPlatonicSlice3Spec { readonly id: TricomplexPlatonicSlice3Id; readonly label: string; readonly basis: readonly [string, string, string]; /** Dyadic theorem vertices in the declared basis. */ readonly vertices: readonly Point3[]; /** Polygon faces indexing `vertices`. */ readonly faces: readonly (readonly number[])[]; readonly center: Point3; readonly edgeLength: number; } export interface RealMandelbrotParameterEvaluation { readonly parameter: number; readonly escaped: boolean; readonly iterations: number; readonly finalValue: number; readonly magnitude: number; } export interface TricomplexMandelbrotSliceEvaluation3 { readonly id: TricomplexPlatonicSlice3Id; /** Negative inside, zero on the theorem boundary, positive outside. */ readonly analyticValue: number; readonly analyticallyBounded: boolean; readonly escaped: boolean; readonly iterations: number; /** Four real idempotent factors; Earthbrot's unused fourth factor is zero. */ readonly factorParameters: readonly [number, number, number, number]; readonly factors: readonly [ RealMandelbrotParameterEvaluation, RealMandelbrotParameterEvaluation, RealMandelbrotParameterEvaluation, RealMandelbrotParameterEvaluation ]; } /** Exact theorem data for the three Platonic tricomplex Mandelbrot slices. */ export declare function tricomplexPlatonicSlice3(id: TricomplexPlatonicSlice3Id): TricomplexPlatonicSlice3Spec; /** * The real idempotent parameters whose independent quadratic orbits decide * membership in the selected tricomplex Mandelbrot slice. */ export declare function tricomplexMandelbrotComponents3(id: TricomplexPlatonicSlice3Id, point: ArrayLike): readonly [number, number, number, number]; /** * Exact half-space value for the proven Platonic shape. It is a membership * function, not a Euclidean distance outside edges and vertices. */ export declare function tricomplexPlatonicValue3(id: TricomplexPlatonicSlice3Id, point: ArrayLike): number; export declare function containsTricomplexPlatonicSlice3(id: TricomplexPlatonicSlice3Id, point: ArrayLike, epsilon?: number): boolean; /** Independent real-orbit realization of the tricomplex Mandelbrot theorem. */ export declare function evaluateTricomplexMandelbrotSlice3(id: TricomplexPlatonicSlice3Id, point: ArrayLike, { maxIterations, escapeRadius }?: QuadraticIterationOptions): TricomplexMandelbrotSliceEvaluation3; //# sourceMappingURL=tricomplex-platonic.d.ts.map