@ravenpay/bankbox-me-sdk
Version:
Raven Bankbox JS Payment SDK
78 lines • 2.09 kB
TypeScript
import eventWorker from "./eventWorker";
interface WidgetOptions {
[key: string]: any;
isPersistent?: boolean;
stream?: boolean;
width?: string;
}
export interface Config {
appName: string;
environment?: 'sandbox' | 'production' | 'development';
widgetOptions?: WidgetOptions;
containerId?: string;
onBluethoothConnected?: (data: any) => void;
onSuccess?: (data: any) => void;
onFail?: (data: any) => void;
onError?: (error: any) => void;
onLoad?: () => void;
}
interface Message {
type: string;
data: any;
message?: any;
}
interface MountOptions {
email?: string;
amount?: number;
containerId?: string;
}
declare class BankboxManager {
private appName;
private environment?;
private widgetOptions?;
private containerId;
private iframe;
private container;
private messageHandlers;
private targetOrigin;
$event: typeof eventWorker;
isInitialized: boolean;
private config;
private windowSize;
private paymentOption;
isBluethoothConnected: boolean;
constants: {
success: string;
fail: string;
error: string;
event_hook: string;
style_config: string;
load: string;
sdkOpen: string;
bluethoothConnected: string;
sdkPaymentData: string;
systemReady: string;
sdkClose: string;
};
constructor(config: Config);
private getTargetOrigin;
private registerCoreListeners;
private injectAnimationStyle;
private initWindowResizeListener;
private initializeListeners;
private initializeIframe;
private reinjectOverlay;
mount(options?: MountOptions): void;
open(options?: MountOptions): {
isBluethoothConnected: boolean;
};
initPayment(options?: MountOptions): void;
close(): void;
private handleBluethoothConnected;
private handleIncomingMessage;
private handleBankboxReady;
sendMessage(message: Message): void;
destroy(): void;
}
export default BankboxManager;
//# sourceMappingURL=manager.d.ts.map