This repository has been archived by the owner on Apr 16, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtypes.ts
50 lines (43 loc) · 1.76 KB
/
types.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/**
* Copyright (C) 2021-2023 Technology Matters
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/
import type { MemberDisplayOptions } from '@twilio/flex-ui-core/src/components/channel/MessagingCanvas';
import type { PreEngagementFormDefinition } from './src/pre-engagement-form';
export type Translations = {
[language: string]: {
[key: string]: string;
};
};
export type MapHelplineLanguage = (helpline: string) => string;
export type Configuration = {
accountSid: string;
flexFlowSid: string;
defaultLanguage: string;
translations: Translations;
preEngagementConfig: PreEngagementFormDefinition;
closedHours?: PreEngagementFormDefinition;
holidayHours?: PreEngagementFormDefinition;
mapHelplineLanguage: MapHelplineLanguage;
memberDisplayOptions?: MemberDisplayOptions;
captureIp: boolean;
checkOpenHours?: boolean;
contactType: ContactType;
showEmojiPicker?: boolean;
blockedEmojis?: string[];
enableRecaptcha?: boolean;
};
type OperatingHoursStatus = 'open' | 'closed' | 'holiday';
export type OperatingHoursResponse = OperatingHoursStatus | { status: OperatingHoursStatus; message: string };
export type ContactType = 'ip' | 'email';