# do not import all endpoints into this module because that uses a lot of memory and stack frames
# if you need the ability to import all endpoints from this module, import them with
# from circle.apis.path_to_api import path_to_api

import enum


class PathValues(str, enum.Enum):
    PING = "/ping"
    V1_CONFIGURATION = "/v1/configuration"
    V1_ENCRYPTION_PUBLIC = "/v1/encryption/public"
    V1_NOTIFICATIONS_SUBSCRIPTIONS = "/v1/notifications/subscriptions"
    V1_NOTIFICATIONS_SUBSCRIPTIONS_ID = "/v1/notifications/subscriptions/{id}"
    V1_CHANNELS = "/v1/channels"
    V1_STABLECOINS = "/v1/stablecoins"
    V1_BUSINESS_ACCOUNT_BALANCES = "/v1/businessAccount/balances"
    V1_BALANCES = "/v1/balances"
    V1_CARDS = "/v1/cards"
    V1_CARDS_ID = "/v1/cards/{id}"
    V1_PAYMENT_TOKENS = "/v1/paymentTokens"
    V1_BUSINESS_ACCOUNT_BANKS_WIRES = "/v1/businessAccount/banks/wires"
    V1_BUSINESS_ACCOUNT_BANKS_WIRES_ID = "/v1/businessAccount/banks/wires/{id}"
    V1_BUSINESS_ACCOUNT_BANKS_WIRES_ID_INSTRUCTIONS = "/v1/businessAccount/banks/wires/{id}/instructions"
    V1_BUSINESS_ACCOUNT_BANKS_CBIT = "/v1/businessAccount/banks/cbit"
    V1_BUSINESS_ACCOUNT_BANKS_CBIT_ID = "/v1/businessAccount/banks/cbit/{id}"
    V1_BUSINESS_ACCOUNT_BANKS_CBIT_ID_INSTRUCTIONS = "/v1/businessAccount/banks/cbit/{id}/instructions"
    V1_BUSINESS_ACCOUNT_WALLETS_ADDRESSES_DEPOSIT = "/v1/businessAccount/wallets/addresses/deposit"
    V1_BUSINESS_ACCOUNT_WALLETS_ADDRESSES_RECIPIENT = "/v1/businessAccount/wallets/addresses/recipient"
    V1_BUSINESS_ACCOUNT_DEPOSITS = "/v1/businessAccount/deposits"
    V1_PAYMENT_INTENTS = "/v1/paymentIntents"
    V1_PAYMENT_INTENTS_ID = "/v1/paymentIntents/{id}"
    V1_PAYMENT_INTENTS_ID_EXPIRE = "/v1/paymentIntents/{id}/expire"
    V1_PAYMENT_INTENTS_ID_REFUND = "/v1/paymentIntents/{id}/refund"
    V1_ADDRESS_BOOK_RECIPIENTS = "/v1/addressBook/recipients"
    V1_ADDRESS_BOOK_RECIPIENTS_ID = "/v1/addressBook/recipients/{id}"
    V1_PAYMENTS = "/v1/payments"
    V1_PAYMENTS_CRYPTO = "/v1/payments/crypto"
    V1_PAYMENTS_ID = "/v1/payments/{id}"
    V1_PAYMENTS_ID_CAPTURE = "/v1/payments/{id}/capture"
    V1_PAYMENTS_ID_CANCEL = "/v1/payments/{id}/cancel"
    V1_PAYMENTS_ID_REFUND = "/v1/payments/{id}/refund"
    V1_PAYMENTS_PRESIGN = "/v1/payments/presign"
    V1_BUSINESS_ACCOUNT_PAYOUTS = "/v1/businessAccount/payouts"
    V1_BUSINESS_ACCOUNT_PAYOUTS_ID = "/v1/businessAccount/payouts/{id}"
    V1_PAYOUTS = "/v1/payouts"
    V1_PAYOUTS_ID = "/v1/payouts/{id}"
    V1_EXCHANGE_RATES_TRADINGPAIR = "/v1/exchange/rates/{trading-pair}"
    V1_SETTLEMENTS = "/v1/settlements"
    V1_SETTLEMENTS_ID = "/v1/settlements/{id}"
    V1_CHARGEBACKS = "/v1/chargebacks"
    V1_CHARGEBACKS_ID = "/v1/chargebacks/{id}"
    V1_WALLETS = "/v1/wallets"
    V1_WALLETS_WALLET_ID = "/v1/wallets/{walletId}"
    V1_WALLETS_WALLET_ID_ADDRESSES = "/v1/wallets/{walletId}/addresses"
    V1_BUSINESS_ACCOUNT_TRANSFERS = "/v1/businessAccount/transfers"
    V1_BUSINESS_ACCOUNT_TRANSFERS_ID = "/v1/businessAccount/transfers/{id}"
    V1_TRANSFERS = "/v1/transfers"
    V1_TRANSFERS_ID = "/v1/transfers/{id}"
    V1_MOCKS_CARDS_CHARGEBACKS = "/v1/mocks/cards/chargebacks"
    V1_MOCKS_PAYMENTS_WIRE = "/v1/mocks/payments/wire"
    V1_CHECKOUT_SESSIONS = "/v1/checkoutSessions"
    V1_CHECKOUT_SESSIONS_ID = "/v1/checkoutSessions/{id}"
    V1_CHECKOUT_SESSIONS_ID_EXTEND = "/v1/checkoutSessions/{id}/extend"
