import { type Complex2, type ComplexQuadraticEvaluation, type QuadraticIterationOptions, type ResolvedQuadraticIterationOptions } from './complex-quadratic.js'; import { type FieldEvaluation4, type ImplicitField4, type Vec4f64 } from './types.js'; export interface BicomplexJuliaOptions extends QuadraticIterationOptions { /** Parameter in [i1,i2,i1*i2,real] order. */ parameter: Vec4f64; } export interface BicomplexIdempotentPair { readonly first: Complex2; readonly second: Complex2; } export interface BicomplexJuliaEvaluation extends FieldEvaluation4 { readonly factors: readonly [ComplexQuadraticEvaluation, ComplexQuadraticEvaluation]; } /** Exact linear change from [i1,i2,i1*i2,real] to the two complex factors. */ export declare function bicomplexToIdempotent(point: ArrayLike): BicomplexIdempotentPair; /** Inverse idempotent transform in [i1,i2,i1*i2,real] order. */ export declare function idempotentToBicomplex(first: Complex2, second: Complex2): Vec4f64; /** Quadratic bicomplex Julia field, evaluated as two independent complex factors. */ export declare class BicomplexJuliaField implements ImplicitField4 { readonly id = "bicomplex-julia-quadratic"; readonly parameter: Vec4f64; readonly factorParameters: BicomplexIdempotentPair; readonly options: ResolvedQuadraticIterationOptions; readonly symmetries: readonly [{ readonly id: "idempotent-product"; readonly description: "The bicomplex quadratic map is the direct product of two complex quadratic maps."; }]; readonly sliceTheorems: readonly [{ readonly id: "factor-diagonalization"; readonly description: "In idempotent coordinates every slice is an affine slice of a product of complex Julia sets."; }]; readonly distanceEstimator: { readonly certificate: "provenProduct"; readonly description: "Per-factor complex estimates combined in the orthogonal product metric."; readonly recommendedStepSafety: 0.2; }; constructor({ parameter, ...iterationOptions }: BicomplexJuliaOptions); evalCPU(point: ArrayLike): BicomplexJuliaEvaluation; } //# sourceMappingURL=bicomplex-julia.d.ts.map