/**
 * Wigner symbols implementation
 * Includes 3j, 6j, and 9j symbols for angular momentum coupling
 */
import { Complex } from '../core/types';
/**
 * Validates triangle inequality for three angular momenta
 *
 * @param j1 First angular momentum
 * @param j2 Second angular momentum
 * @param j3 Third angular momentum
 * @returns true if triangle inequality is satisfied
 */
export declare function isValidTriangle(j1: number, j2: number, j3: number): boolean;
/**
 * Calculates Wigner 3j symbol using Clebsch-Gordan coefficients
 *
 * The Wigner 3j symbol is related to Clebsch-Gordan coefficients by:
 * (j1  j2  j3) = (-1)^(j1-j2-m3) / sqrt(2*j3+1) * ⟨j1,m1;j2,m2|j3,-m3⟩
 * (m1  m2  m3)
 *
 * Based on verified formula from Sage/SymPy documentation:
 * ⟨j₁ m₁ j₂ m₂ | j₃ m₃⟩ = (-1)^(j₁-j₂+m₃) * √(2j₃+1) * Wigner3j(j₁, j₂, j₃, m₁, m₂, -m₃)
 *
 * @param j1 First angular momentum
 * @param j2 Second angular momentum
 * @param j3 Third angular momentum
 * @param m1 First magnetic quantum number
 * @param m2 Second magnetic quantum number
 * @param m3 Third magnetic quantum number
 * @returns Wigner 3j symbol value
 */
export declare function wigner3j(j1: number, j2: number, j3: number, m1: number, m2: number, m3: number): Complex;
/**
 * Applies symmetry operation to Wigner 3j symbol
 * There are 12 symmetry operations for 3j symbols
 *
 * @param j1 First angular momentum
 * @param j2 Second angular momentum
 * @param j3 Third angular momentum
 * @param m1 First magnetic quantum number
 * @param m2 Second magnetic quantum number
 * @param m3 Third magnetic quantum number
 * @param operation Symmetry operation index (0-11)
 * @returns Transformed 3j symbol with phase factor
 */
export declare function wigner3jSymmetry(j1: number, j2: number, j3: number, m1: number, m2: number, m3: number, operation: number): {
    value: Complex;
    phase: number;
};
/**
 * Calculates Wigner 6j symbol using Racah's formula
 *
 * Uses the explicit sum formula:
 * {j1 j2 j3} = Delta(j1,j2,j3)Delta(j1,l2,l3)Delta(l1,j2,l3)Delta(l1,l2,j3) ×
 * {l1 l2 l3}   Σ_z (-1)^z [(z-j1-j2-j3)!(z-j1-l2-l3)!(z-l1-j2-l3)!(z-l1-l2-j3)! ×
 *                         (j1+j2+l1+l2-z)!(j2+j3+l2+l3-z)!(j3+j1+l3+l1-z)!]^(-1)
 *
 * where Delta(a,b,c) is the triangle coefficient.
 *
 * @param j1 Angular momentum j1
 * @param j2 Angular momentum j2
 * @param j3 Angular momentum j3
 * @param l1 Angular momentum l1
 * @param l2 Angular momentum l2
 * @param l3 Angular momentum l3
 * @returns Wigner 6j symbol value
 */
export declare function wigner6j(j1: number, j2: number, j3: number, l1: number, l2: number, l3: number): Complex;
export declare function wigner9j(j1: number, j2: number, j3: number, l1: number, l2: number, l3: number, k1: number, k2: number, k3: number): Complex;
