"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SENDER_TYPE = exports.ALL_CONTENT_TYPES = exports.INLINE_CONTENT_TYPES = exports.PREDEFINED_CONTENT_TYPES = exports.CHANNELS = exports.GET_CONTENT_VARIABLES_URL = exports.GET_CONTENT_URL = exports.GET_ALL_CONTENTS_URL = exports.GET_MESSAGING_SERVICE_SIDS_URL = exports.GET_INCOMING_SHORT_CODES_URL = exports.GET_INCOMING_PHONE_NUMBERS_URL = exports.CONTENT_SID_REGEX = exports.MESSAGING_SERVICE_SID_REGEX = exports.TWILIO_SHORT_CODE_REGEX = exports.E164_REGEX = exports.TOKEN_REGEX = exports.FIELD_REGEX = exports.SEND_SMS_URL = exports.ACCOUNT_SID_TOKEN = exports.CONTENT_SID_TOKEN = exports.MAX_SCHEDULE_TIME_MS = exports.MIN_SCHEDULE_TIME_MS = void 0;
exports.MIN_SCHEDULE_TIME_MS = 15 * 60 * 1000;
exports.MAX_SCHEDULE_TIME_MS = 35 * 24 * 60 * 60 * 1000;
exports.CONTENT_SID_TOKEN = '{accountSid}';
exports.ACCOUNT_SID_TOKEN = '{accountSid}';
exports.SEND_SMS_URL = `https://api.twilio.com/2010-04-01/Accounts/${exports.ACCOUNT_SID_TOKEN}/Messages.json`;
exports.FIELD_REGEX = /\[(.*?)\]/;
exports.TOKEN_REGEX = /{{(.*?)}}/g;
exports.E164_REGEX = /^\+[1-9]\d{1,14}$/;
exports.TWILIO_SHORT_CODE_REGEX = /^[1-9]\d{4,5}$/;
exports.MESSAGING_SERVICE_SID_REGEX = /^MG[0-9a-fA-F]{32}$/;
exports.CONTENT_SID_REGEX = /^HX[0-9a-fA-F]{32}$/;
exports.GET_INCOMING_PHONE_NUMBERS_URL = `https://api.twilio.com/2010-04-01/Accounts/${exports.ACCOUNT_SID_TOKEN}/IncomingPhoneNumbers.json?PageSize=1000`;
exports.GET_INCOMING_SHORT_CODES_URL = `https://api.twilio.com/2010-04-01/Accounts/${exports.ACCOUNT_SID_TOKEN}/SMS/ShortCodes.json?PageSize=1000`;
exports.GET_MESSAGING_SERVICE_SIDS_URL = 'https://messaging.twilio.com/v1/Services?PageSize=1000';
exports.GET_ALL_CONTENTS_URL = 'https://content.twilio.com/v1/Content?PageSize=1000';
exports.GET_CONTENT_URL = `https://content.twilio.com/v1/Content/${exports.CONTENT_SID_TOKEN}`;
exports.GET_CONTENT_VARIABLES_URL = `https://content.twilio.com/v1/Content/${exports.CONTENT_SID_TOKEN}`;
exports.CHANNELS = {
    SMS: 'SMS',
    MMS: 'MMS',
    WHATSAPP: 'Whatsapp',
    MESSENGER: 'Messenger',
    RCS: 'RCS'
};
exports.PREDEFINED_CONTENT_TYPES = {
    TEXT: {
        friendly_name: 'Text',
        name: 'twilio/text',
        supports_media: false,
        supported_channels: [exports.CHANNELS.SMS, exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER, exports.CHANNELS.RCS]
    },
    MEDIA: {
        friendly_name: 'Media',
        name: 'twilio/media',
        supports_media: true,
        supported_channels: [exports.CHANNELS.MMS, exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER, exports.CHANNELS.RCS]
    },
    QUICK_REPLY: {
        friendly_name: 'Quick Reply',
        name: 'twilio/quick-reply',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER]
    },
    CALL_TO_ACTION: {
        friendly_name: 'Call to Action',
        name: 'twilio/call-to-action',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER]
    },
    LIST_PICKER: {
        friendly_name: 'List Picker',
        name: 'twilio/list-picker',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP]
    },
    CARD: {
        friendly_name: 'Card',
        name: 'twilio/card',
        supports_media: true,
        supported_channels: [exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER, exports.CHANNELS.RCS]
    },
    WHATSAPP_CARD: {
        friendly_name: 'WhatsApp Card',
        name: 'whatsapp/card',
        supports_media: true,
        supported_channels: [exports.CHANNELS.WHATSAPP]
    },
    WHATSAPP_AUTHENTICATION: {
        friendly_name: 'WhatsApp Authentication',
        name: 'whatsapp/authentication',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP]
    },
    CATALOG: {
        friendly_name: 'Catalog',
        name: 'twilio/catalog',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP]
    },
    CAROUSEL: {
        friendly_name: 'Carousel',
        name: 'twilio/catalog',
        supports_media: false,
        supported_channels: [exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER, exports.CHANNELS.RCS]
    }
};
exports.INLINE_CONTENT_TYPES = {
    INLINE: {
        friendly_name: 'Inline',
        name: undefined,
        supports_media: true,
        supported_channels: [exports.CHANNELS.SMS, exports.CHANNELS.MMS, exports.CHANNELS.WHATSAPP, exports.CHANNELS.MESSENGER, exports.CHANNELS.RCS]
    }
};
exports.ALL_CONTENT_TYPES = {
    ...exports.PREDEFINED_CONTENT_TYPES,
    ...exports.INLINE_CONTENT_TYPES
};
exports.SENDER_TYPE = {
    PHONE_NUMBER: 'Phone number',
    FACEBOOK_PAGE_ID: 'Facebook Page ID',
    MESSAGING_SERVICE: 'Messaging Service'
};
//# sourceMappingURL=constants.js.map