up
All checks were successful
Deploy to Production / deploy (push) Successful in 8s

This commit is contained in:
lubukhu
2026-01-24 13:35:11 +07:00
parent 6c3e93636e
commit 65fd0158a3
145 changed files with 10262 additions and 0 deletions

View File

@@ -0,0 +1,93 @@
/**
* Game Iframe SDK - Core
* SDK chính - compose các layers: MessageHandler, MessageSender
*/
import { EventEmitter } from './EventEmitter';
import { MessageHandler } from './MessageHandler';
import { MessageSender } from './MessageSender';
import { GameIframeSDKConfig, SDKEvents, PushDataPayload, LeaderboardData } from './types';
/**
* GameIframeSDK - Main SDK class
* Composes MessageHandler và MessageSender
*/
export declare class GameIframeSDK extends EventEmitter<SDKEvents> {
private config;
private messageHandler;
private messageSender;
private pendingData;
private isReady;
constructor(config: GameIframeSDKConfig);
/**
* Set iframe element reference
*/
setIframe(iframe: HTMLIFrameElement | null): this;
/**
* Get current iframe
*/
getIframe(): HTMLIFrameElement | null;
/**
* Check if game is ready
*/
isGameReady(): boolean;
/**
* Check if sender is ready (iframe available)
*/
isSenderReady(): boolean;
/**
* Send game data to iframe
*/
sendGameData(data: PushDataPayload): boolean;
/**
* Send leaderboard data to iframe
*/
sendLeaderboard(data: LeaderboardData): boolean;
/**
* Queue data to be sent when game is ready
*/
queueGameData(data: PushDataPayload): this;
/**
* Clear queued data
*/
clearQueuedData(): this;
/**
* Force reload iframe
*/
reloadIframe(): boolean;
/**
* Cleanup and destroy SDK
*/
destroy(): void;
/**
* Get MessageHandler instance for advanced usage
*/
getMessageHandler(): MessageHandler;
/**
* Get MessageSender instance for advanced usage
*/
getMessageSender(): MessageSender;
/**
* Setup event forwarding from MessageHandler to SDK events
*/
private setupEventForwarding;
/**
* Send queued data
*/
private sendQueuedData;
/**
* Internal logging
*/
private log;
}
/**
* Create SDK instance
*/
export declare function createGameIframeSDK(config: GameIframeSDKConfig): GameIframeSDK;
/**
* Get or create default SDK instance
*/
export declare function getGameIframeSDK(config?: GameIframeSDKConfig): GameIframeSDK;
/**
* Destroy default instance
*/
export declare function destroyGameIframeSDK(): void;
//# sourceMappingURL=GameIframeSDK.d.ts.map