syntax = "proto3"; package wallet.v1; import "base/v1/msg.proto"; import "wallet/v1/msg.proto"; service InternalWalletSrv { rpc InternalWalletSrvHealth(base.v1.Empty) returns (base.v1.StatusRes); // Lock And Release Assets rpc LockAsset(LockAssetReq) returns (base.v1.StatusRes); rpc ReleaseAsset(LockAssetReq) returns (base.v1.StatusRes); rpc CollectCommission(CommissionReq) returns (CommissionRes); rpc RefundCommission(RefundCommissionReq) returns (CommissionRes); // Deterministically derive the Stellar public key. This operation is local // and has no database, Horizon, or GL side effects. rpc GetPublicKeyByNationalID(NationalIDReq) returns (PubKeyRes); // Create and enqueue the on-chain account activation transaction. rpc ActivateAccount(NationalIDReq) returns (base.v1.StatusRes); // Commission Logs rpc InitReferrerCommissionLog(InitReferrerCommissionLogIn) returns (base.v1.Empty); // Authenticated administrative asset lifecycle. Delete is represented as // deactivation/locking so referenced financial history remains intact. rpc AdminUpsertAsset(AdminUpsertAssetReq) returns (AdminAssetMutationRes); rpc AdminDeactivateAsset(AdminDeactivateAssetReq) returns (base.v1.StatusRes); }