import { EvTransferType } from '../enums' ; import { EvAvailableCountry , EvAvailableRequeueQueue , EvDirectAgentListItem , EvGate , EvTransferPhoneBookItem , } from '../lib/EvClient' ; export type TextFieldModel = { label ? : string ; placeholder ? : string ; value ? : string ; disabled ? : boolean ; readonly ? : boolean ; router ? : string ; } ; export type EvTransferOption = { type : string ; label : string ; textFields : TextFieldModel [ ] ; } ; export interface EvTransferCallUIProps { currentLocale : string ; transferring : boolean ; transferOptions : EvTransferOption [ ] ; isStayOnCall : boolean ; selectedTransferType : EvTransferType ; textFields : TextFieldModel [ ] ; transferPhoneBook : EvTransferViewPhoneBookItem [ ] ; transferAgentList : EvDirectAgentListItem [ ] ; transferAgentListUpdateTTL : number ; transferRecipientCountryId : string ; transferRecipientNumber : string ; transferPhoneBookSelectedIndex : number ; transferAgentId : string ; transferCountryOptions : EvAvailableCountry [ ] ; allowManualInternationalTransfer : boolean ; transferCallDisabled : boolean ; isWide ? : boolean ; requeuing : boolean ; selectedQueueGroupId : string ; selectedGateId : string ; queueGroups : EvAvailableRequeueQueue [ ] ; selectedQueueGroup : EvAvailableRequeueQueue ; selectedGate : EvGate ; } export interface EvTransferCallUIFunctions { goBack ( ) : void ; clickCallRecipient ( router ) : void ; clickTransferTypeFiled ( type ) : void ; setStayOnCall ( status ) : void ; fetchAgentList ( ) : void ; changeTransferAgentId ( agentId ) : void ; changeRecipientNumber ( recipientNumber ) : void ; changeTransferPhoneBookSelected ( index ) : void ; changeRecipientCountryId ( countryId ) : void ; searchAgent ( option , text ) : boolean ; searchPhoneBook ( option , text ) : boolean ; transferCall ( ) : Promise < void > ; setCancelTemplate ( templates ) : void ; cancelTransfer ( ) : void ; cancelTransferPage ( ) : void ; goToActivityCallLogPage ( ) : void ; goToRequeueGroupPage ( ) : void ; goToRequeueCallPage ( ) : void ; goToRequeueGroupDetailPage ( params ) : void ; searchGroup ( option , text ) : boolean ; searchGate ( option , text ) : boolean ; submitSelection ( queueId ) : void ; } export type EvTransferViewPhoneBookItem = { phoneBookName : string ; parsedDestination : string ; phoneBookItemIndex : number ; } & EvTransferPhoneBookItem ; export interface GoToRequeueGroupDetailPageParams { groupId : string ; isCheckDisable ? : boolean ; }