UNPKG

@klever-one/web-sdk

Version:

Web SDK for integrating real-time room management and streaming functionality into web applications

45 lines (44 loc) 1.76 kB
import { PixelStreaming } from '@epicgames-ps/lib-pixelstreamingfrontend-ue5.4'; import { AvatarData } from '../types/streaming.types'; /** * Streaming UI 상호작용을 담당하는 서비스 * 책임: 화면 크기 조정, 풀스크린, 아바타 설정, UI 상호작용 */ export declare class StreamingUIService { private static instance; private stream; private resizeHandler; private currentCamera; private containerElement; private constructor(); static getInstance(): StreamingUIService; setupResizeHandler(): void; setStream(stream: PixelStreaming | null): void; setContainer(element: HTMLElement | null): void; getContainer(): HTMLElement | null; getResizeHandler(): (() => void) | null; resetResizeHandler(): void; resize(width: number, height: number, type?: string | null): void; private handleMouseDown; private handleMouseUp; private emitUnrealCoordinates; /** * 중앙화된 데이터 채널 전송 메서드 * 모든 emitUIInteraction 호출을 이 메서드를 통해 래핑 */ private emitToDataChannel; enteredFullpage(): void; exitedFullpage(containerRef: React.RefObject<HTMLDivElement | null>): void; private setCameraConfig; sendAvatarNum(avatarNum: number | string): void; sendAvatarAppearanceChange(avatarData: AvatarData): void; private sendAvatarAppearanceChangeInternal; generateDigitalHuman(taskId: string, gender: string): void; sendFailedGenerateAvatarHead(): void; sendPlaceBackgroundChange(id: string): void; sendPageSetting(type: string, value: string): void; sendVoiceSetting(voiceId: string): void; emitUIInteraction(data: any): void; reset(): void; cleanup(): void; }