import type { TextOptions, VectorGlyphInfo, LoadedFont, TextQueryOptions, TextRange } from '../core/types'; import type { BoundingBox } from '../utils/vectors'; import type { SlugGPUData } from './slug/types'; import type { HyphenationTrieNode } from '../hyphenation'; import * as THREE from 'three'; export interface VectorTextResult { group: THREE.Group; mesh: THREE.Mesh; gpuData: SlugGPUData; glyphs: VectorGlyphInfo[]; planeBounds: BoundingBox; query(options: TextQueryOptions): TextRange[]; getLoadedFont(): LoadedFont | undefined; measureTextWidth(text: string, letterSpacing?: number): number; update(options: Partial): Promise; dispose(): void; } export declare class Text { static setHarfBuzzPath: typeof import("..").Text.setHarfBuzzPath; static setHarfBuzzBuffer: typeof import("..").Text.setHarfBuzzBuffer; static init: typeof import("..").Text.init; static registerPattern: typeof import("..").Text.registerPattern; static preloadPatterns: typeof import("..").Text.preloadPatterns; static setMaxFontCacheMemoryMB: typeof import("..").Text.setMaxFontCacheMemoryMB; static enableWoff2: typeof import("..").Text.enableWoff2; static create(options: TextOptions): Promise; } export type { TextOptions, VectorTextResult as TextGeometryInfo, VectorGlyphInfo, LoadedFont }; export type { HyphenationTrieNode }; export { createSlugGLSLMesh } from './slug/slugGLSL'; export type { SlugGLSLMesh, SlugGLSLMeshOptions } from './slug/slugGLSL'; export type { SlugGPUData } from './slug/types';