package mservice import "git.sendico.io/tech/sxchnge/bff/pkg/merrors" type Type = string const ( Accounts Type = "accounts" // Represents user accounts in the system Verification Type = "verification" // Represents verification code flows Amplitude Type = "amplitude" // Represents analytics integration with Amplitude Discovery Type = "discovery" // Represents service discovery registry Site Type = "site" // Represents public site endpoints Changes Type = "changes" // Tracks changes made to resources Clients Type = "clients" // Represents client information ChainGateway Type = "chain_gateway" // Represents chain gateway microservice MntxGateway Type = "mcards_gateway" // Represents Monetix gateway microservice AuroraGateway Type = "aurora_gateway" // Represents Aurora card gateway microservice AsterBankGateway Type = "asterbank_gateway" // Represents AsterBank local/dev bank payout emulator MBankGateway Type = "mbank_gateway" // Represents mBank real-money bank payout gateway PaymentGateway Type = "payment_gateway" // Represents payment gateway microservice FXOracle Type = "fx_oracle" // Represents FX oracle microservice FXIngestor Type = "fx_ingestor" // Represents FX ingestor microservice Treasury Type = "treasury" // Represents Treasury microservice OrgMoneyFlowStats Type = "org_money_flow_stats" // Represents organization money flow statistics FeePlans Type = "fee_plans" // Represents fee plans microservice BillingDocuments Type = "billing_documents" // Represents billing documents microservice BillingFees Type = "billing_fees" // Represents billing fees microservice AMLSources Type = "aml_sources" // Represents Backoffice AML data-source management CardBlacklist Type = "card_blacklist" // Represents backoffice card-blacklist management ComplianceAML Type = "compliance_aml" // Represents AML screening microservice ComplianceKYC Type = "compliance_kyc" // Represents KYC verification microservice CompliancePolicy Type = "compliance_policy" // Represents policy enforcement microservice ComplianceAssessment Type = "compliance_assessment" // Represents durable compliance assessment coordination CardBlacklistIngestor Type = "card_blacklist_ingestor" // Represents automated card-blacklist ingestion Limits Type = "limits" // Represents limit reservation and usage enforcement microservice FilterProjects Type = "filter_projects" // Represents comments on tasks or other resources Invitations Type = "invitations" // Represents invitations sent to users Invoices Type = "invoices" // Represents invoices Logo Type = "logo" // Represents logos for organizations or projects Ledger Type = "ledger" // Represents ledger microservice LedgerAccounts Type = "ledger_accounts" // Represents ledger accounts microservice // LedgerBalances and LedgerEntries gate the resources derived from an // organization-owned ledger account. The edge Ledger API authorizes them in // two steps: the account must be visible to the caller (see edge/product // internal/ledgervisibility), and reading its balance or journal entries // then requires the matching permission below. Owners of a personal account // are exempt from the second step. LedgerBalances Type = "ledger_balances" // Represents ledger account balances microservice LedgerEntries Type = "ledger_journal_entries" // Represents ledger journal entries microservice LedgerOutbox Type = "ledger_outbox" // Represents ledger outbox microservice LedgerParties Type = "ledger_parties" // Represents ledger account owner parties microservice LedgerPlines Type = "ledger_posting_lines" // Represents ledger journal posting lines microservice PaymentOrchestrator Type = "payment_orchestrator" // Represents payment orchestration microservice PaymentQuotation Type = "payment_quotation" // Represents payment quotation microservice InboundDepositProcessor Type = "crypto_deposits" // Represents inbound crypto deposit processing microservice ReceivingRoutes Type = "receiving_routes" // Represents inbound receiving route resolution ChainAssets Type = "chain_assets" // Represents managed chain assets ChainWallets Type = "chain_wallets" // Represents managed chain wallets ChainWalletBalances Type = "chain_wallet_balances" // Represents managed chain wallet balances ChainTransfers Type = "chain_transfers" // Represents chain transfers ChainDeposits Type = "chain_deposits" // Represents chain deposits Callbacks Type = "callbacks" // Represents webhook callback subscriptions ChSettle Type = "chsettle_gateway" // Represents chimera settlement gateway Notifications Type = "notifications" // Represents notifications sent to users Organizations Type = "organizations" // Represents organizations in the system Payments Type = "payments" // Represents payments service Transactions Type = "transactions" // Represents transaction reporting and investigations PaymentRoutes Type = "payment_routes" // Represents payment routing definitions PaymentMethods Type = "payment_methods" // Represents payment methods service Permissions Type = "permissions" // Represents permissiosns service Policies Type = "policies" // Represents access control policies PolicyAssignements Type = "policy_assignments" // Represents policy assignments database Recipients Type = "recipients" // Represents payment recipients OrgRecipients Type = "org_recipients" // Represents organization-scoped shared recipients (policy resource type) RefreshTokens Type = "refresh_tokens" // Represents refresh tokens for authentication Roles Type = "roles" // Represents roles in access control SignupProvisioning Type = "signup_provisioning" // Represents in-flight signup provisioning records Storage Type = "storage" // Represents statuses of tasks or projects TgSettle Type = "tgsettle_gateway" // Represents tg settlement gateway TronGateway Type = "tron_gateway" // Represents tron gateway microservice Tenants Type = "tenants" // Represents tenants managed in the system VerificationTokens Type = "verification_tokens" //Represents verification tokens managed in the system Wallets Type = "wallets" // Represents workflows for tasks or projects WalletProvisioning Type = "wallet_provisioning" // Represents durable wallet and receiving-route provisioning state WalletRoutes Type = "wallet_routes" // Represents authoritative chain wallet gateway routing RotatedWallets Type = "rotated_wallets" // Represents backoffice rotated-wallet review and disposition access Workflows Type = "workflows" // Represents workflows for tasks or projects ) const ( DocumentsReport Type = "documents_report" // Represents employee closing reports DocumentsPayout Type = "documents_payout" // Represents report-bound RUB payout rows DocumentsPayoutAttempt Type = "documents_payout_attempt" // Represents immutable payout execution attempts DocumentsPayoutBatch Type = "documents_payout_batch" // Represents imported payout batches ) func StringToSType(s string) (Type, error) { switch s { case Accounts, Verification, Amplitude, Site, Changes, Clients, ChainGateway, ChainWallets, WalletProvisioning, WalletRoutes, ChainWalletBalances, ChainTransfers, ChainDeposits, Callbacks, MntxGateway, AuroraGateway, AsterBankGateway, MBankGateway, PaymentGateway, FXOracle, FXIngestor, Treasury, OrgMoneyFlowStats, FeePlans, BillingDocuments, DocumentsReport, DocumentsPayout, DocumentsPayoutAttempt, DocumentsPayoutBatch, BillingFees, AMLSources, CardBlacklist, ComplianceAML, ComplianceKYC, CompliancePolicy, ComplianceAssessment, CardBlacklistIngestor, Limits, FilterProjects, Invitations, Invoices, Logo, Ledger, LedgerAccounts, LedgerBalances, LedgerEntries, LedgerOutbox, LedgerParties, LedgerPlines, Notifications, Organizations, Payments, Transactions, PaymentRoutes, PaymentOrchestrator, InboundDepositProcessor, ReceivingRoutes, PaymentMethods, Permissions, Policies, PolicyAssignements, Recipients, RefreshTokens, Roles, SignupProvisioning, Storage, Tenants, Workflows, Discovery, ChSettle, TgSettle, TronGateway, RotatedWallets: return s, nil default: return "", merrors.InvalidArgument("invalid service type", s) } }