import { Geometry } from '../../geometries/types' import { Vec3 } from '../../maths/types' import RecursiveArray from '../../utils/recursiveArray' export interface MirrorOptions { origin?: Vec3 normal?: Vec3 } export function mirror(options: MirrorOptions, geometry: T): T export function mirror(options: MirrorOptions, ...geometries: RecursiveArray): Array export function mirror(options: MirrorOptions, ...geometries: RecursiveArray): Array export function mirrorX(geometry: T): T export function mirrorX(...geometries: RecursiveArray): Array export function mirrorX(...geometries: RecursiveArray): Array export function mirrorY(geometry: T): T export function mirrorY(...geometries: RecursiveArray): Array export function mirrorY(...geometries: RecursiveArray): Array export function mirrorZ(geometry: T): T export function mirrorZ(...geometries: RecursiveArray): Array export function mirrorZ(...geometries: RecursiveArray): Array