const constants = {
    defaults: {
        accountId: 1,
        accountName: 'Adult',
        currency: 'OMR',
        translationCode: 'ar'
    },
    mediaType: {
        smartCard: 'SmartCard',
        ticket: 'Ticket'
    },
    mediaPurposeType: {
        unknown: 'UNKNOWN',
        anonymous: 'ANONYMOUS',
        personalized: 'PERSONALIZED',
        employee: 'EMPLOYEE',
        organization: 'ORGANIZATION'
    },
    validityStart: {
        startOfBusinessDay: 'StartOfBusinessDay',
        timeOfPurchase: 'TimeOfPurchase'
    },
    identityType: {
        email: 'EMAIL_ADDRESS',
        phone: 'PHONE_NUMBER'
    },
    reasonTypes: {
        accountBlock: 'ACCOUNT_BLOCK',
        accountUnblock: 'ACCOUNT_UNBLOCK',
        deviceBlock: 'DEVICE_BLOCK',
        deviceUnblock: 'DEVICE_UNBLOCK',
        hotlistReasons: 'Hotlist Reasons',
        addProductReasons: 'Add Product Reasons',
        removeProductReasons: 'Remove Product Reasons',
        inspectionReason: 'Inspection reason',
        accountReasons: 'Account Reasons',
        correctedTransactionReasons: 'Corrected Transaction Reasons',
        unblockMediaReasons: 'Unblock Media Reasons',
        removeMediaReasons: 'Remove Media Reasons',
        penaltyReasons: 'Penalty Reasons',
        blockMediaReasons: 'Block Media Reasons',
        mediaReasons: 'Media Reasons',
        issueReversal: 'Issue Reversal',
        blockDeviceReasons: 'Block Device Reasons',
        correctedMediaReasons: 'CORRECTED_MEDIA_REASONS'
    },
    issueReversalTypes: {
        ticketReversal: 'Ticket Reversal',
        creditReversal: 'Credit Reversal',
        canceledPurchase: 'Canceled Purchase',
        mediaDestroyed: 'Media Destroyed',
        refundPurchase: 'Refund Purchase'
    },
    addProductTypes: {
        loyaltyProgramAward: 'Loyalty Program Award',
        importRecharge: 'Import recharge',
        transferFunds: 'TRANSFER_FUNDS',
        topupOrder: 'Top-up Order',
        recreate: 'RECREATE'
    },
    distributionStatus: {
        startedDownload: 'STARTED_DOWNLOAD',
        finishedDownload: 'FINISHED_DOWNLOAD',
        superseded: 'SUPERSEDED',
        finishedUpgrade: 'FINISHED_UPGRADE'
    },
    deviceType: {
        pos: 'OFFICE_POS',
        vehicleTicketingMachine: 'VEHICLE_TICKETING_MACHINE',
        driverConsole: 'VEHICLE_DRIVER_CONSOLE',
        mobile: 'MOBILE'
    },
    cacheKeys: {
        posInfo: 'posInfo',
        currency: 'currency',
        ticket: 'ticket',
        transactionFiles: 'transFiles',
        account: 'account',
        errorRaised: 'error',
        verifyDocs: 'docs'
    },
    transacStatus: {
        unsent: 'Unsent',
        sent: 'Sent',
        corrupted: 'Corrupted',
        unknown: 'Unknown'
    },
    fareItemType: {
        singleRideTicket: 'Single Ride Ticket'
    },
    waybillName: {
        baggage: 'Baggage',
        baggageReturn: 'Baggage return',
        penalty: 'Penalty payment',
        topUp: 'Account Top up',
        intercity: 'Intercity',
        issueSmartCard: 'Issue smart card',
        topUpSmartCard: 'Top up smart card',
        seat: 'Seat'
    },
    paymentInfoType: {
        cash: 'Cash',
        creditCard: 'Credit card',
        debitCard: 'Debit card',
        account: 'Account',
        none: 'None',
    },
    accountType: {
        anonymous: 'ANONYMOUS',
        regular: 'REGULAR',
        concession: 'CONCESSION'
    },
    accountVerificationStatus: {
        pending: 'PENDING',
        rejected: 'REJECTED',
        verified: 'VERIFIED',
        canceled: 'CANCELED',
        inReview: 'IN_REVIEW',
        expired: 'EXPIRED'
    },
    accountVerificationProofStatus: {
        awaitingData: 'AWAITING_DATA',
        dataProvided: 'DATA_PROVIDED',
        pending: 'PENDING',
        invalidData: 'INVALID_DATA',
        passed: 'PASSED',
        failed: 'FAILED'
    },
    accountIdentityChangeEventType: {
        forgottenPassword: 'FORGOTTEN_PASSWORD',
        updatePassword: 'UPDATE_PASSWORD',
        resetPassword: 'RESET_PASSWORD',
        other: 'OTHER',
        create: 'CREATE'
    },
    productEntityClass: {
        fareSellableProduct: 'fareSellableProduct',
        smartCardPrice: 'smartCardPrice'
    },
    productType: {
        ePurse: 'ePurse',
        eWallet: 'eWallet',
        storedRides: 'StoredRides',
        topUpRelative: 'StoredValueRelative',
        topUpFixed: 'StoredValueFixed',
        periodPass: 'PeriodPassXDays',
        luggage: 'Luggage',
        penaltyFee: 'PenaltyFee',
        absolutePenalty: 'AbsolutePenalty',
        multiPrice: 'MultiPrice',
        seat: 'Seat',
        processingFee: 'ProcessingFee',
        salesOrder: 'SalesOrder'
    },
    employeeRolesLong: {
        supervisor: 'Supervisor Employee Role',
        csa: 'Customer Service Agent Employee Role',
        maintenance: 'Maintenance Employee Role'
    },
    priceRoundingType: {
        none: 'None',
        ceiling: 'Ceiling',
        floor: 'Floor'
    },
    travelTypes: {
        oneway: 'oneWay',
        return: 'return'
    },
    travelFlexibilityTypes: {
        nonRefundable: 'nonRefundable',
        standard: 'standard',
        flexible: 'flexible'
    },
    salesTypes: {
        online: 'online',
        direct: 'direct'
    },
    edcTerminalCommands: {
        ENQ: '05',
        ACK: '06',
        EOT: '04',
        STX: '02',
        ETX: '03'
    },
    organizationTypes: {
        simpleOrganization: 'SimpleOrganization',
        merchant: 'Merchant',
        operator: 'Operator',
        maintenance: 'Maintenance'
    },
    qrCodeContentsCompression: {
        none: 'None',
        gzip: 'Gzip'
    }
};

module.exports = constants;
