UNPKG

@questlabs/react-native-sdk

Version:
85 lines (80 loc) 2.07 kB
import { TextStyle, View, ViewStyle } from "react-native"; export interface props { campaignVariationId?: string; sections: ISection[]; questId: string; questUserId?: string; userToken?: string; actions?: ICriteria[]; loading?: boolean; title?: string; description?: string; multipleChoice?: "checkbox" | "fill"; template?: "multipage" | "single" | "oneQuestion"; onCross?: () => void; // style?: styles; // onSuccess?: () => void; onError?: ( event: "VERIFY_ACTION" | "CLAIM_ACTION" | "INVALID" | "EMPTY_FIELD", message: string, data?: {} ) => void; styleConfig?: styleConfig; } export interface ISection { name?: string; criteriaNames: string[]; description?: string; heading?: string; step?: number; } export interface ICriteria { actionId: string; title?: string; actionType: string; answer: (string | number)[]; options?: (string | number)[]; } export interface styleConfig { Form?: ViewStyle; Topbar?: ViewStyle; EmailError?: { text?: "Error"; errorStyle?: ViewStyle; }; Heading?: TextStyle; Description?: TextStyle; Input?: ViewStyle; Label?: TextStyle; PrimaryButton?: ViewStyle | TextStyle; SecondaryButton?: ViewStyle | TextStyle; // SingleChoice?: { // style?:ViewStyle, // selectedStyle?: ViewStyle // }, MultiChoice?: { style?: TextStyle; selectedStyle?: ViewStyle; }; // ProgressBar?: { // completeTabColor?: '', // currentTabColor?: '', // pendingTabColor?: '' // }, Footer?: { FooterStyle?: ViewStyle; FooterText?: TextStyle; FooterIcon?: TextStyle; }; } // export interface styles { // mainView?: ViewStyle; // lineStyle?: ViewStyle; // sectionText?: TextStyle; // onboardingHeaderText?: TextStyle; // onboardingDescriptionText?: TextStyle; // inputHeaderText?: TextStyle; // getStartButtonViewStyle?: ViewStyle; // previousButtonViewStyle?: ViewStyle; // footerView?: ViewStyle; // }