import { Cube } from './cube'; export interface CubeFaceData { texture?: string | false | null; uv?: [number, number, number, number]; uv_mode?: 'box' | 'per-face'; rotation?: number; mirror?: boolean; cullface?: boolean; } /** * CubeFace represents a single face of a cube with UV mapping * Supports both box UV (shared UV coordinates) and per-face UV */ export declare class CubeFace { cube: Cube; direction: 'north' | 'south' | 'east' | 'west' | 'up' | 'down'; texture: string | false | null; uv: [number, number, number, number]; rotation: number; tint: number; cullface: string; material_name?: string; enabled: boolean; constructor(direction: 'north' | 'south' | 'east' | 'west' | 'up' | 'down', data: CubeFaceData | null, cube: Cube); /** * Get face direction (alias for direction) */ get face(): 'north' | 'south' | 'east' | 'west' | 'up' | 'down'; /** * Get UV coordinates for this face */ getUV(): [number, number, number, number]; /** * Set UV coordinates */ setUV(uv: [number, number, number, number]): void; /** * Get texture UUID */ getTexture(): string | false | null; /** * Set texture UUID */ setTexture(texture: string | false | null): void; /** * Rotate UV coordinates */ rotateUV(angle: number): void; /** * Mirror UV coordinates */ mirrorUV(axis: 'u' | 'v'): void; /** * Scale UV coordinates */ scaleUV(scaleX: number, scaleY: number): void; /** * Translate UV coordinates */ translateUV(offsetX: number, offsetY: number): void; /** * Get UV size */ get uv_size(): [number, number]; /** * Get face normal direction */ getNormal(): [number, number, number]; /** * Get face vertices in world space */ getVertices(): Array<[number, number, number]>; /** * Get save copy for serialization */ getSaveCopy(): any; getUndoCopy(): any; /** * Extend face data */ extend(data: CubeFaceData | any): this; } //# sourceMappingURL=cube_face.d.ts.map