// SPDX-License-Identifier: Apache-2.0
/**
 * EIP-1066 Status Codes
 * Source: https://eips.ethereum.org/EIPS/eip-1066
 */
export const EIP1066_CODES = {
    // 0x0* Generic
    FAILURE: "0x00",
    SUCCESS: "0x01",
    AWAITING_OTHERS: "0x02",
    ACCEPTED: "0x03",
    LOWER_LIMIT_OR_INSUFFICIENT: "0x04",
    RECEIVER_ACTION_REQUESTED: "0x05",
    UPPER_LIMIT: "0x06",
    DUPLICATE_UNNECESSARY_OR_INAPPLICABLE: "0x08",
    INFORMATIONAL_OR_METADATA: "0x0f",
    // 0x1* Permission & Control
    DISALLOWED_OR_STOP: "0x10",
    ALLOWED_OR_GO: "0x11",
    AWAITING_OTHERS_PERMISSION: "0x12",
    PERMISSION_REQUESTED: "0x13",
    TOO_OPEN_OR_INSECURE: "0x14",
    NEEDS_YOUR_PERMISSION_OR_CONTINUATION: "0x15",
    REVOKED_OR_BANNED: "0x16",
    NOT_APPLICABLE_TO_CURRENT_STATE: "0x18",
    PERMISSION_DETAILS_OR_CONTROL_CONDITIONS: "0x1f",
    // 0x2* Find, Inequalities & Range
    NOT_FOUND_UNEQUAL_OR_OUT_OF_RANGE: "0x20",
    FOUND_EQUAL_OR_IN_RANGE: "0x21",
    AWAITING_MATCH: "0x22",
    MATCH_REQUEST_SENT: "0x23",
    BELOW_RANGE_OR_UNDERFLOW: "0x24",
    REQUEST_FOR_MATCH: "0x25",
    ABOVE_RANGE_OR_OVERFLOW: "0x26",
    DUPLICATE_CONFLICT_OR_COLLISION: "0x28",
    MATCHING_META_OR_INFO: "0x2f",
    // 0x3* Negotiation & Governance
    SENDER_DISAGREES_OR_NAY: "0x30",
    SENDER_AGREES_OR_YEA: "0x31",
    AWAITING_RATIFICATION: "0x32",
    OFFER_SENT_OR_VOTED: "0x33",
    QUORUM_NOT_REACHED: "0x34",
    RECEIVER_RATIFICATION_REQUESTED: "0x35",
    OFFER_OR_VOTE_LIMIT_REACHED: "0x36",
    ALREADY_VOTED: "0x38",
    NEGOTIATION_RULES_OR_PARTICIPATION_INFO: "0x3f",
    // 0x4* Availability & Time
    UNAVAILABLE: "0x40",
    AVAILABLE: "0x41",
    PAUSED: "0x42",
    QUEUED: "0x43",
    NOT_AVAILABLE_YET: "0x44",
    AWAITING_YOUR_AVAILABILITY: "0x45",
    EXPIRED: "0x46",
    ALREADY_DONE: "0x48",
    AVAILABILITY_RULES_OR_INFO: "0x4f",
    // 0x5* Tokens, Funds & Finance
    TRANSFER_FAILED: "0x50",
    TRANSFER_SUCCESSFUL: "0x51",
    AWAITING_PAYMENT_FROM_OTHERS: "0x52",
    HOLD_OR_ESCROW: "0x53",
    INSUFFICIENT_FUNDS: "0x54",
    FUNDS_REQUESTED: "0x55",
    TRANSFER_VOLUME_EXCEEDED: "0x56",
    FUNDS_NOT_REQUIRED: "0x58",
    TOKEN_OR_FINANCIAL_INFORMATION: "0x5f",
    // 0xA* Application-Specific Codes
    APP_SPECIFIC_FAILURE: "0xa0",
    APP_SPECIFIC_SUCCESS: "0xa1",
    APP_SPECIFIC_AWAITING_OTHERS: "0xa2",
    APP_SPECIFIC_ACCEPTANCE: "0xa3",
    APP_SPECIFIC_BELOW_CONDITION: "0xa4",
    APP_SPECIFIC_RECEIVER_ACTION_REQUESTED: "0xa5",
    APP_SPECIFIC_EXPIRY_OR_LIMIT: "0xa6",
    APP_SPECIFIC_INAPPLICABLE_CONDITION: "0xa8",
    APP_SPECIFIC_META_OR_INFO: "0xaf",
    // 0xE* Encryption, Identity & Proofs
    DECRYPT_FAILURE: "0xe0",
    DECRYPT_SUCCESS: "0xe1",
    AWAITING_OTHER_SIGNATURES_OR_KEYS: "0xe2",
    SIGNED: "0xe3",
    UNSIGNED_OR_UNTRUSTED: "0xe4",
    SIGNATURE_REQUIRED: "0xe5",
    KNOWN_TO_BE_COMPROMISED: "0xe6",
    ALREADY_SIGNED_OR_NOT_ENCRYPTED: "0xe8",
    CRYPTOGRAPHY_ID_OR_PROOF_METADATA: "0xef",
    // 0xF* Off-Chain
    OFF_CHAIN_FAILURE: "0xf0",
    OFF_CHAIN_SUCCESS: "0xf1",
    AWAITING_OFF_CHAIN_PROCESS: "0xf2",
    OFF_CHAIN_PROCESS_STARTED: "0xf3",
    OFF_CHAIN_SERVICE_UNREACHABLE: "0xf4",
    OFF_CHAIN_ACTION_REQUIRED: "0xf5",
    OFF_CHAIN_EXPIRY_OR_LIMIT_REACHED: "0xf6",
    DUPLICATE_OFF_CHAIN_REQUEST: "0xf8",
    OFF_CHAIN_INFO_OR_META: "0xff",
};
