UNPKG

@solidgate/client-sdk-loader

Version:
29 lines (28 loc) 1.17 kB
import Message from './Message'; import FieldName from '../../enums/FieldName'; import AdditionalFieldName from '../../enums/AdditionalFieldName'; import InteractionType from '../../enums/InteractionType'; import InteractionTargetType from '../../enums/InteractionTargetType'; import MessageType from '../../enums/MessageType'; import ResignFieldName from '../../enums/ResignFieldName'; interface ControlState { isValid: boolean; isTouched: boolean; } declare type InteractionMessageFormState = { cardForm: { fields: Record<FieldName.CardCvv | FieldName.CardNumber | FieldName.CardExpiryDate, ControlState> & Partial<Record<AdditionalFieldName | 'cardHolder', ControlState>>; } & ControlState; } | { resignForm: { fields: Record<ResignFieldName, ControlState>; } & ControlState; }; declare type InteractionMessage = Message<MessageType.Interaction> & { target: { type: InteractionTargetType; name: FieldName | ResignFieldName | AdditionalFieldName | 'submit' | 'googlePay' | 'applePay' | 'paypal'; interaction: InteractionType; }; } & InteractionMessageFormState; export default InteractionMessage;