expo-pngme-sdk
Version:
Expo SDK for Pngme financial insights - Android only, optimized for managed workflow
71 lines • 1.93 kB
TypeScript
export interface PngmeDialogStyle {
primaryColor?: string;
backgroundColor?: string;
textColor?: string;
buttonBackgroundColor?: string;
buttonTextColor?: string;
linkTextColor?: string;
titleTextSize?: number;
bodyTextSize?: number;
buttonTextSize?: number;
closeIconColor?: string;
smsIconColor?: string;
privacyIconColor?: string;
customTitle?: string;
customSmsDescription?: string;
customPrivacyDescription?: string;
customButtonText?: string;
buttonCornerRadius?: number;
buttonElevation?: number;
privacyPolicyUrl?: string;
eulaUrl?: string;
contentPadding?: number;
}
export interface PngmeConfig {
clientKey: string;
externalId: string;
companyName: string;
firstName?: string;
lastName?: string;
email?: string;
phoneNumber?: string;
dialogStyle?: PngmeDialogStyle;
}
export interface PngmePermissionStatus {
smsPermission: 'granted' | 'denied' | 'never_asked';
termsAccepted: boolean;
}
export interface PngmeEventMap extends Record<string, any> {
onPermissionGranted: {
status: PngmePermissionStatus;
};
onPermissionDenied: {
status: PngmePermissionStatus;
};
onDialogDismissed: {
completed: boolean;
};
onSignInComplete: {
userId: string;
};
onSmsUploadStarted: {
timestamp: number;
};
onSmsUploadComplete: {
success: boolean;
count?: number;
};
onError: {
error: string;
code: string;
};
}
export interface PngmeModuleInterface {
go(config: PngmeConfig): Promise<void>;
isPermissionGranted(): Promise<boolean>;
getUserUuid(): Promise<string | null>;
setDefaultStyle(style: PngmeDialogStyle): Promise<void>;
clearDefaultStyle(): Promise<void>;
getPermissionStatus(): Promise<PngmePermissionStatus>;
}
//# sourceMappingURL=Pngme.types.d.ts.map