vlibras-player-webjs
Version:
Biblioteca JavaScript moderna para integração do VLibras Player com React, Vue, Angular e vanilla JS
162 lines • 4.19 kB
TypeScript
/**
* Utilitários de desenvolvimento e diagnóstico para VLibras Player
* Fornece ferramentas para debugging, profiling e diagnósticos
*/
export interface DiagnosticResult {
webgl: {
supported: boolean;
version: string;
renderer: string;
vendor: string;
};
assets: {
available: boolean;
size: number;
version: string;
loadTime: number;
};
performance: {
loadTime: number;
memoryUsage: number;
fps: number;
};
compatibility: {
browser: string;
version: string;
supported: boolean;
userAgent: string;
};
recommendations: string[];
}
export interface PerformanceReport {
operations: Array<{
name: string;
duration: number;
timestamp: number;
memory?: number;
}>;
summary: {
totalOperations: number;
averageDuration: number;
slowestOperation: string;
memoryPeak: number;
};
}
export interface CacheInfo {
size: number;
entries: number;
hitRate: number;
missRate: number;
storage: 'memory' | 'localStorage' | 'indexedDB';
}
export interface DebugInfo {
version: string;
buildTime: string;
environment: 'development' | 'production';
features: string[];
configuration: Record<string, any>;
}
/**
* Classe principal de utilitários de desenvolvimento
*/
export declare class VLibrasDevTools {
private static isDebugMode;
private static performanceData;
private static profilingStartTime;
/**
* Ativa o modo debug
*/
static enableDebugMode(): void;
/**
* Desativa o modo debug
*/
static disableDebugMode(): void;
/**
* Verifica se está no modo debug
*/
static isDebugEnabled(): boolean;
/**
* Executa diagnósticos completos do sistema
*/
static runDiagnostics(): Promise<DiagnosticResult>;
/**
* Inicia profiling de performance
*/
static startProfiling(): void;
/**
* Para profiling e retorna relatório
*/
static stopProfiling(): PerformanceReport;
/**
* Registra uma operação para profiling
*/
static recordOperation(name: string, duration: number, memory?: number): void;
/**
* Obtém informações de debug
*/
static getDebugInfo(): DebugInfo;
/**
* Limpa dados de cache (placeholder - implementar com sistema de cache real)
*/
static clearCache(): Promise<void>;
/**
* Obtém informações do cache (placeholder)
*/
static getCacheInfo(): CacheInfo;
/**
* Verifica suporte e informações do WebGL
*/
private static checkWebGL;
/**
* Verifica assets do VLibras
*/
private static checkAssets;
/**
* Verifica informações de performance
*/
private static checkPerformance;
/**
* Verifica compatibilidade do browser
*/
private static checkCompatibility;
/**
* Gera recomendações baseadas nos diagnósticos
*/
private static generateRecommendations;
/**
* Estima FPS (simplificado)
*/
private static estimateFPS;
/**
* Injeta estilos CSS para debug
*/
private static injectDebugStyles;
/**
* Inicia monitoramento automático de performance
*/
private static startAutoPerformanceMonitoring;
}
/**
* Decorador para medir performance automaticamente
*/
export declare function measurePerformance(target: any, propertyName: string, descriptor: PropertyDescriptor): PropertyDescriptor;
/**
* Utilitários de logging estruturado
*/
export declare class VLibrasLogger {
private static logs;
static debug(message: string, data?: any): void;
static info(message: string, data?: any): void;
static warn(message: string, data?: any): void;
static error(message: string, data?: any): void;
private static log;
private static getLogStyle;
static getLogs(): Array<{
level: string;
message: string;
timestamp: number;
data?: any;
}>;
static clearLogs(): void;
}
//# sourceMappingURL=VLibrasDevTools.d.ts.map