/** * Trait Documentation for HoloScript LSP * * Provides detailed documentation for all HoloScript traits * to display in hover/completion/signature help. */ export interface TraitDoc { name: string; annotation: string; description: string; category: 'physics' | 'animation' | 'rendering' | 'networking' | 'input' | 'ai' | 'utility' | 'hololand'; properties: PropertyDoc[]; methods: MethodDoc[]; events: EventDoc[]; example: string; since?: string; deprecated?: boolean; deprecationMessage?: string; } export interface PropertyDoc { name: string; type: string; description: string; default?: string; required?: boolean; range?: [number, number]; } export interface MethodDoc { name: string; signature: string; description: string; parameters: ParameterDoc[]; returns?: string; } export interface ParameterDoc { name: string; type: string; description: string; optional?: boolean; } export interface EventDoc { name: string; description: string; payload?: string; } /** * Complete trait documentation database */ export declare const TRAIT_DOCS: Record; /** * Get documentation for a trait by name or annotation */ export declare function getTraitDoc(name: string): TraitDoc | undefined; /** * Get all trait names for completion */ export declare function getAllTraitNames(): string[]; /** * Get traits by category */ export declare function getTraitsByCategory(category: TraitDoc['category']): TraitDoc[]; /** * Format trait documentation as Markdown for hover */ export declare function formatTraitDocAsMarkdown(doc: TraitDoc): string; /** * Format trait documentation as compact Markdown for hover */ export declare function formatTraitDocCompact(doc: TraitDoc): string; //# sourceMappingURL=traitDocs.d.ts.map