vlibras-player-webjs
Version:
Biblioteca JavaScript moderna para integração do VLibras Player com React, Vue, Angular e vanilla JS
169 lines • 5.07 kB
TypeScript
import { VLibrasPlayerConfig, PlayerStatus, TranslateOptions, PlayOptions, PersonalizationConfig, PlaybackSpeed, SupportedRegion, PlaybackResult } from '../../types/core.types';
import { VLibrasEventEmitter } from '../../infrastructure/events/VLibrasEvents';
/**
* VLibras Player - Classe principal para controle do avatar de Libras
*/
export declare class VLibrasPlayer {
private options;
private playerManager;
private translator;
private text?;
private gloss?;
eventEmitter: VLibrasEventEmitter;
private loaded;
private gameContainer?;
private player?;
private status;
private region;
private globalGlossLength;
constructor(options?: VLibrasPlayerConfig);
/**
* Configura eventos do PlayerManager
*/
private setupPlayerManagerEvents;
/**
* Carrega o player no elemento wrapper especificado
*/
load(wrapper: HTMLElement): void;
/**
* Traduz texto para glosa e reproduz
*/
translate(text: string, options?: TranslateOptions): void;
/**
* Reproduz glosa
*/
play(gloss?: string, options?: PlayOptions): void;
/**
* Reproduz mensagem de boas-vindas
*/
playWelcome(): void;
/**
* Continua reprodução
*/
continue(): void;
/**
* Repete reprodução atual
*/
repeat(): void;
/**
* Pausa reprodução
*/
pause(): void;
/**
* Para reprodução
*/
stop(): void;
/**
* Define velocidade de reprodução
*/
setSpeed(speed: PlaybackSpeed): void;
/**
* Define personalização do avatar
*/
setPersonalization(personalization: PersonalizationConfig): void;
/**
* Muda avatar
*/
changeAvatar(avatarName: string): void;
/**
* Alterna legendas
*/
toggleSubtitle(): void;
/**
* Define região
*/
setRegion(region: SupportedRegion): void;
getStatus(): PlayerStatus;
getText(): string | undefined;
getGloss(): string | undefined;
isLoaded(): boolean;
getRegion(): SupportedRegion;
/**
* Obtém o event emitter do player
*/
getEventEmitter(): VLibrasEventEmitter;
private isDefaultUrl;
private getTargetScript;
private joinUrl;
private initializeUnity;
private changeStatus;
protected onLoad(): void;
protected onTranslateStart(): void;
protected onTranslateEnd(): void;
protected onGlossStart(): void;
protected onGlossEnd(_glossLength: string): void;
protected onAnimationPlay(): void;
protected onAnimationPause(): void;
protected onAnimationEnd(): void;
protected onAnimationProgress(progress: number): void;
protected onGlossResponse(_counter: number, _glossLength: string): void;
protected onGetAvatar(_avatar: any): void;
protected onStartWelcome(): void;
protected onStopWelcome(_finished: boolean): void;
protected onError(error: string): void;
/**
* Adiciona listener para eventos do player
*/ on<K extends keyof import('../../infrastructure/events/VLibrasEvents').PlayerEvents>(event: K, listener: (data: import('../../infrastructure/events/VLibrasEvents').PlayerEvents[K]) => void): () => void;
/**
* Remove listener de evento
*/ off<K extends keyof import('../../infrastructure/events/VLibrasEvents').PlayerEvents>(event: K, listener: (data: import('../../infrastructure/events/VLibrasEvents').PlayerEvents[K]) => void): void;
/**
* Configura Unity Bridge automaticamente
*/
setupUnityBridge(): void;
/**
* Aplica CSS otimizado automaticamente
*/
setupOptimizedCSS(containerSelector?: string): void;
/**
* Executa diagnósticos do sistema
*/
runDiagnostics(): Promise<import("../../features/devtools/VLibrasDevTools").DiagnosticResult>;
/**
* Ativa modo debug
*/
enableDebugMode(): void;
/**
* Desativa modo debug
*/
disableDebugMode(): void;
/**
* Verifica se está em modo debug
*/
isDebugMode(): boolean;
/**
* Obtém estatísticas do player
*/
getStats(): {
status: PlayerStatus;
loaded: boolean;
region: SupportedRegion;
text: string | undefined;
gloss: string | undefined;
};
/**
* Carrega o player de forma assíncrona
*/
loadAsync(wrapper: HTMLElement): Promise<void>;
/**
* Traduz texto de forma assíncrona
*/
translateAsync(text: string, options?: TranslateOptions): Promise<string>;
/**
* Reproduz glosa de forma assíncrona
*/
playAsync(gloss?: string, options?: PlayOptions): Promise<PlaybackResult>;
/**
* Traduz e reproduz texto em uma única operação assíncrona
*/
translateAndPlay(text: string, options?: TranslateOptions): Promise<PlaybackResult>;
/**
* Aguarda até o player estar pronto
*/
waitForReady(): Promise<void>;
/**
* Destrói o player e limpa recursos
*/
destroy(): void;
}
//# sourceMappingURL=VLibrasPlayer.d.ts.map