import { IPlayerInfo } from "../Types/IPlayerInfo"; import { AD_TYPE } from "../Types/AdType"; import { PurchaseResult } from "../Types/PurchaseResult"; import { IPlatformFriend } from "../Types/IPlatformFriend"; export declare abstract class PlatformSDK { protected constructor(); /** * Initializes the SDK. On FBInstant, this would *not* call `startGameAsync` */ abstract initialize(): Promise; abstract createContext(_suggestedPlayerID: string | Array | null): Promise; /** * This only exists because Facebook has a distinction between init and starting */ abstract startGame(): Promise; abstract requestHapticFeedbackAsync(): Promise; /** * @param _progress The actual progress to set, not increment */ abstract setLoadingProgress(_progress: number): Promise; abstract addOnPauseCallback(cb: () => void): void; abstract addOnResumeCallback(cb: () => void): void; /** * Gets all player info at once (for game start), not optimal for any other use */ abstract getPlayerInfo(): IPlayerInfo; abstract getEntryPointAsync(): Promise; abstract getPlayerName(): string; abstract isAdsSupported(): boolean; abstract getPlayerId(): string; abstract getPlayerLocale(): string; abstract getPlayerPicUrl(): string; abstract getContextId(): string; abstract getContextType(): string; abstract purchaseAsync(_productId: string): Promise; abstract getFriends(): Promise; abstract submitTournamentScoreAsync(_score: number): Promise; abstract switchContext(_id: string): Promise; abstract showBannerAd(_placementId: string): Promise; abstract hideBannerAd(_placementId: string): Promise; abstract getAdvertisementInstance(_type: AD_TYPE, _placementId: string): Promise; abstract getEntryPointData(): { [key: string]: unknown; }; abstract getSignedInfo(_payload?: string): Promise; abstract isIAPAvailable(): boolean; abstract getIAPCatalog(): Promise; abstract save(_data: Record): Promise; abstract load(): Promise>; abstract flush(): Promise; abstract isReady(): boolean; }