@meshtrade/api-node 1.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/README.md +93 -0
  2. package/dist/buf/validate/validate_pb.d.ts +4597 -0
  3. package/dist/buf/validate/validate_pb.js +354 -0
  4. package/dist/google/type/date_pb.d.ts +52 -0
  5. package/dist/google/type/date_pb.js +26 -0
  6. package/dist/meshtrade/common/config.d.ts +50 -0
  7. package/dist/meshtrade/common/config.js +34 -0
  8. package/dist/meshtrade/common/connectInterceptors.d.ts +137 -0
  9. package/dist/meshtrade/common/connectInterceptors.js +233 -0
  10. package/dist/meshtrade/common/validation.d.ts +62 -0
  11. package/dist/meshtrade/common/validation.js +77 -0
  12. package/dist/meshtrade/compliance/client/v1/client_pb.d.ts +138 -0
  13. package/dist/meshtrade/compliance/client/v1/client_pb.js +23 -0
  14. package/dist/meshtrade/compliance/client/v1/company_pb.d.ts +313 -0
  15. package/dist/meshtrade/compliance/client/v1/company_pb.js +100 -0
  16. package/dist/meshtrade/compliance/client/v1/company_representative_pb.d.ts +81 -0
  17. package/dist/meshtrade/compliance/client/v1/company_representative_pb.js +22 -0
  18. package/dist/meshtrade/compliance/client/v1/company_representative_role_pb.d.ts +88 -0
  19. package/dist/meshtrade/compliance/client/v1/company_representative_role_pb.js +95 -0
  20. package/dist/meshtrade/compliance/client/v1/fund_pb.d.ts +65 -0
  21. package/dist/meshtrade/compliance/client/v1/fund_pb.js +18 -0
  22. package/dist/meshtrade/compliance/client/v1/identification_document_type_pb.d.ts +55 -0
  23. package/dist/meshtrade/compliance/client/v1/identification_document_type_pb.js +62 -0
  24. package/dist/meshtrade/compliance/client/v1/index.d.ts +16 -0
  25. package/dist/meshtrade/compliance/client/v1/index.js +59 -0
  26. package/dist/meshtrade/compliance/client/v1/industry_classification_pb.d.ts +86 -0
  27. package/dist/meshtrade/compliance/client/v1/industry_classification_pb.js +16 -0
  28. package/dist/meshtrade/compliance/client/v1/natural_person_connection_type_pb.d.ts +133 -0
  29. package/dist/meshtrade/compliance/client/v1/natural_person_connection_type_pb.js +140 -0
  30. package/dist/meshtrade/compliance/client/v1/natural_person_pb.d.ts +143 -0
  31. package/dist/meshtrade/compliance/client/v1/natural_person_pb.js +24 -0
  32. package/dist/meshtrade/compliance/client/v1/pep_status_pb.d.ts +46 -0
  33. package/dist/meshtrade/compliance/client/v1/pep_status_pb.js +53 -0
  34. package/dist/meshtrade/compliance/client/v1/service_node_meshts.d.ts +78 -0
  35. package/dist/meshtrade/compliance/client/v1/service_node_meshts.js +141 -0
  36. package/dist/meshtrade/compliance/client/v1/service_pb.d.ts +123 -0
  37. package/dist/meshtrade/compliance/client/v1/service_pb.js +45 -0
  38. package/dist/meshtrade/compliance/client/v1/source_of_income_and_wealth_pb.d.ts +180 -0
  39. package/dist/meshtrade/compliance/client/v1/source_of_income_and_wealth_pb.js +187 -0
  40. package/dist/meshtrade/compliance/client/v1/tax_residency_pb.d.ts +40 -0
  41. package/dist/meshtrade/compliance/client/v1/tax_residency_pb.js +17 -0
  42. package/dist/meshtrade/compliance/client/v1/trust_pb.d.ts +65 -0
  43. package/dist/meshtrade/compliance/client/v1/trust_pb.js +18 -0
  44. package/dist/meshtrade/compliance/client/v1/verification_status_pb.d.ts +57 -0
  45. package/dist/meshtrade/compliance/client/v1/verification_status_pb.js +64 -0
  46. package/dist/meshtrade/iam/api_user/v1/api_credentials_pb.d.ts +43 -0
  47. package/dist/meshtrade/iam/api_user/v1/api_credentials_pb.js +17 -0
  48. package/dist/meshtrade/iam/api_user/v1/api_user_pb.d.ts +152 -0
  49. package/dist/meshtrade/iam/api_user/v1/api_user_pb.js +95 -0
  50. package/dist/meshtrade/iam/api_user/v1/index.d.ts +4 -0
  51. package/dist/meshtrade/iam/api_user/v1/index.js +45 -0
  52. package/dist/meshtrade/iam/api_user/v1/service_node_meshts.d.ts +114 -0
  53. package/dist/meshtrade/iam/api_user/v1/service_node_meshts.js +201 -0
  54. package/dist/meshtrade/iam/api_user/v1/service_pb.d.ts +343 -0
  55. package/dist/meshtrade/iam/api_user/v1/service_pb.js +86 -0
  56. package/dist/meshtrade/iam/group/v1/group_pb.d.ts +58 -0
  57. package/dist/meshtrade/iam/group/v1/group_pb.js +17 -0
  58. package/dist/meshtrade/iam/group/v1/index.d.ts +3 -0
  59. package/dist/meshtrade/iam/group/v1/index.js +44 -0
  60. package/dist/meshtrade/iam/group/v1/service_node_meshts.d.ts +90 -0
  61. package/dist/meshtrade/iam/group/v1/service_node_meshts.js +161 -0
  62. package/dist/meshtrade/iam/group/v1/service_pb.d.ts +306 -0
  63. package/dist/meshtrade/iam/group/v1/service_pb.js +75 -0
  64. package/dist/meshtrade/iam/role/v1/index.d.ts +2 -0
  65. package/dist/meshtrade/iam/role/v1/index.js +43 -0
  66. package/dist/meshtrade/iam/role/v1/role.d.ts +71 -0
  67. package/dist/meshtrade/iam/role/v1/role.js +192 -0
  68. package/dist/meshtrade/iam/role/v1/role_pb.d.ts +164 -0
  69. package/dist/meshtrade/iam/role/v1/role_pb.js +171 -0
  70. package/dist/meshtrade/iam/user/v1/index.d.ts +3 -0
  71. package/dist/meshtrade/iam/user/v1/index.js +44 -0
  72. package/dist/meshtrade/iam/user/v1/service_node_meshts.d.ts +108 -0
  73. package/dist/meshtrade/iam/user/v1/service_node_meshts.js +191 -0
  74. package/dist/meshtrade/iam/user/v1/service_pb.d.ts +379 -0
  75. package/dist/meshtrade/iam/user/v1/service_pb.js +90 -0
  76. package/dist/meshtrade/iam/user/v1/user_pb.d.ts +58 -0
  77. package/dist/meshtrade/iam/user/v1/user_pb.js +17 -0
  78. package/dist/meshtrade/ledger/transaction/v1/index.d.ts +5 -0
  79. package/dist/meshtrade/ledger/transaction/v1/index.js +46 -0
  80. package/dist/meshtrade/ledger/transaction/v1/service_node_meshts.d.ts +80 -0
  81. package/dist/meshtrade/ledger/transaction/v1/service_node_meshts.js +140 -0
  82. package/dist/meshtrade/ledger/transaction/v1/service_pb.d.ts +102 -0
  83. package/dist/meshtrade/ledger/transaction/v1/service_pb.js +41 -0
  84. package/dist/meshtrade/ledger/transaction/v1/transaction_action_pb.d.ts +46 -0
  85. package/dist/meshtrade/ledger/transaction/v1/transaction_action_pb.js +53 -0
  86. package/dist/meshtrade/ledger/transaction/v1/transaction_state.d.ts +14 -0
  87. package/dist/meshtrade/ledger/transaction/v1/transaction_state.js +64 -0
  88. package/dist/meshtrade/ledger/transaction/v1/transaction_state_pb.d.ts +50 -0
  89. package/dist/meshtrade/ledger/transaction/v1/transaction_state_pb.js +57 -0
  90. package/dist/meshtrade/market_data/price/v1/index.d.ts +3 -0
  91. package/dist/meshtrade/market_data/price/v1/index.js +44 -0
  92. package/dist/meshtrade/market_data/price/v1/price_pb.d.ts +50 -0
  93. package/dist/meshtrade/market_data/price/v1/price_pb.js +19 -0
  94. package/dist/meshtrade/market_data/price/v1/service_node_meshts.d.ts +66 -0
  95. package/dist/meshtrade/market_data/price/v1/service_node_meshts.js +121 -0
  96. package/dist/meshtrade/market_data/price/v1/service_pb.d.ts +48 -0
  97. package/dist/meshtrade/market_data/price/v1/service_pb.js +27 -0
  98. package/dist/meshtrade/option/method_options/v1/index.d.ts +1 -0
  99. package/dist/meshtrade/option/method_options/v1/index.js +42 -0
  100. package/dist/meshtrade/option/method_options/v1/method_options_pb.d.ts +132 -0
  101. package/dist/meshtrade/option/method_options/v1/method_options_pb.js +108 -0
  102. package/dist/meshtrade/reporting/account_report/v1/account_report_pb.d.ts +136 -0
  103. package/dist/meshtrade/reporting/account_report/v1/account_report_pb.js +28 -0
  104. package/dist/meshtrade/reporting/account_report/v1/disclaimer_pb.d.ts +39 -0
  105. package/dist/meshtrade/reporting/account_report/v1/disclaimer_pb.js +16 -0
  106. package/dist/meshtrade/reporting/account_report/v1/fee_entry_pb.d.ts +66 -0
  107. package/dist/meshtrade/reporting/account_report/v1/fee_entry_pb.js +18 -0
  108. package/dist/meshtrade/reporting/account_report/v1/income_entry_pb.d.ts +139 -0
  109. package/dist/meshtrade/reporting/account_report/v1/income_entry_pb.js +80 -0
  110. package/dist/meshtrade/reporting/account_report/v1/index.d.ts +7 -0
  111. package/dist/meshtrade/reporting/account_report/v1/index.js +48 -0
  112. package/dist/meshtrade/reporting/account_report/v1/service_node_meshts.d.ts +72 -0
  113. package/dist/meshtrade/reporting/account_report/v1/service_node_meshts.js +131 -0
  114. package/dist/meshtrade/reporting/account_report/v1/service_pb.d.ts +162 -0
  115. package/dist/meshtrade/reporting/account_report/v1/service_pb.js +46 -0
  116. package/dist/meshtrade/reporting/account_report/v1/trading_statement_entry_pb.d.ts +80 -0
  117. package/dist/meshtrade/reporting/account_report/v1/trading_statement_entry_pb.js +18 -0
  118. package/dist/meshtrade/studio/instrument/v1/index.d.ts +3 -0
  119. package/dist/meshtrade/studio/instrument/v1/index.js +44 -0
  120. package/dist/meshtrade/studio/instrument/v1/instrument_pb.d.ts +53 -0
  121. package/dist/meshtrade/studio/instrument/v1/instrument_pb.js +18 -0
  122. package/dist/meshtrade/studio/instrument/v1/instrument_type_pb.d.ts +214 -0
  123. package/dist/meshtrade/studio/instrument/v1/instrument_type_pb.js +221 -0
  124. package/dist/meshtrade/studio/instrument/v1/unit_pb.d.ts +148 -0
  125. package/dist/meshtrade/studio/instrument/v1/unit_pb.js +155 -0
  126. package/dist/meshtrade/trading/limit_order/v1/index.d.ts +3 -0
  127. package/dist/meshtrade/trading/limit_order/v1/index.js +44 -0
  128. package/dist/meshtrade/trading/limit_order/v1/limit_order_pb.d.ts +211 -0
  129. package/dist/meshtrade/trading/limit_order/v1/limit_order_pb.js +111 -0
  130. package/dist/meshtrade/trading/limit_order/v1/service_node_meshts.d.ts +111 -0
  131. package/dist/meshtrade/trading/limit_order/v1/service_node_meshts.js +190 -0
  132. package/dist/meshtrade/trading/limit_order/v1/service_pb.d.ts +357 -0
  133. package/dist/meshtrade/trading/limit_order/v1/service_pb.js +73 -0
  134. package/dist/meshtrade/trading/market_order/v1/index.d.ts +3 -0
  135. package/dist/meshtrade/trading/market_order/v1/index.js +44 -0
  136. package/dist/meshtrade/trading/market_order/v1/market_order_pb.d.ts +20 -0
  137. package/dist/meshtrade/trading/market_order/v1/market_order_pb.js +16 -0
  138. package/dist/meshtrade/trading/market_order/v1/service_node_meshts.d.ts +66 -0
  139. package/dist/meshtrade/trading/market_order/v1/service_node_meshts.js +121 -0
  140. package/dist/meshtrade/trading/market_order/v1/service_pb.d.ts +34 -0
  141. package/dist/meshtrade/trading/market_order/v1/service_pb.js +22 -0
  142. package/dist/meshtrade/type/v1/address_pb.d.ts +82 -0
  143. package/dist/meshtrade/type/v1/address_pb.js +16 -0
  144. package/dist/meshtrade/type/v1/amount.d.ts +13 -0
  145. package/dist/meshtrade/type/v1/amount.js +68 -0
  146. package/dist/meshtrade/type/v1/amountWrapper.d.ts +74 -0
  147. package/dist/meshtrade/type/v1/amountWrapper.js +98 -0
  148. package/dist/meshtrade/type/v1/amount_pb.d.ts +44 -0
  149. package/dist/meshtrade/type/v1/amount_pb.js +18 -0
  150. package/dist/meshtrade/type/v1/contact_details_pb.d.ts +98 -0
  151. package/dist/meshtrade/type/v1/contact_details_pb.js +16 -0
  152. package/dist/meshtrade/type/v1/date.d.ts +49 -0
  153. package/dist/meshtrade/type/v1/date.js +136 -0
  154. package/dist/meshtrade/type/v1/date_pb.d.ts +50 -0
  155. package/dist/meshtrade/type/v1/date_pb.js +16 -0
  156. package/dist/meshtrade/type/v1/decimalConversions.d.ts +24 -0
  157. package/dist/meshtrade/type/v1/decimalConversions.js +39 -0
  158. package/dist/meshtrade/type/v1/decimal_pb.d.ts +24 -0
  159. package/dist/meshtrade/type/v1/decimal_pb.js +16 -0
  160. package/dist/meshtrade/type/v1/index.d.ts +15 -0
  161. package/dist/meshtrade/type/v1/index.js +56 -0
  162. package/dist/meshtrade/type/v1/ledger.d.ts +27 -0
  163. package/dist/meshtrade/type/v1/ledger.js +115 -0
  164. package/dist/meshtrade/type/v1/ledger_pb.d.ts +83 -0
  165. package/dist/meshtrade/type/v1/ledger_pb.js +90 -0
  166. package/dist/meshtrade/type/v1/sorting_pb.d.ts +35 -0
  167. package/dist/meshtrade/type/v1/sorting_pb.js +42 -0
  168. package/dist/meshtrade/type/v1/time_of_day.d.ts +74 -0
  169. package/dist/meshtrade/type/v1/time_of_day.js +199 -0
  170. package/dist/meshtrade/type/v1/time_of_day_pb.d.ts +67 -0
  171. package/dist/meshtrade/type/v1/time_of_day_pb.js +16 -0
  172. package/dist/meshtrade/type/v1/token.d.ts +4 -0
  173. package/dist/meshtrade/type/v1/token.js +23 -0
  174. package/dist/meshtrade/type/v1/tokenWrapper.d.ts +49 -0
  175. package/dist/meshtrade/type/v1/tokenWrapper.js +92 -0
  176. package/dist/meshtrade/type/v1/token_pb.d.ts +56 -0
  177. package/dist/meshtrade/type/v1/token_pb.js +17 -0
  178. package/dist/meshtrade/wallet/account/v1/account_pb.d.ts +264 -0
  179. package/dist/meshtrade/wallet/account/v1/account_pb.js +74 -0
  180. package/dist/meshtrade/wallet/account/v1/index.d.ts +3 -0
  181. package/dist/meshtrade/wallet/account/v1/index.js +44 -0
  182. package/dist/meshtrade/wallet/account/v1/service_node_meshts.d.ts +114 -0
  183. package/dist/meshtrade/wallet/account/v1/service_node_meshts.js +201 -0
  184. package/dist/meshtrade/wallet/account/v1/service_pb.d.ts +559 -0
  185. package/dist/meshtrade/wallet/account/v1/service_pb.js +112 -0
  186. package/package.json +171 -0
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ // @generated by protoc-gen-meshts v1
3
+ // @generated from file meshtrade/iam/api_user/v1/service.proto (package meshtrade.iam.api_user.v1, syntax proto3)
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.APIUserServiceNode = void 0;
7
+ const connect_1 = require("@connectrpc/connect");
8
+ const connect_node_1 = require("@connectrpc/connect-node");
9
+ const service_pb_1 = require("./service_pb");
10
+ const config_1 = require("../../../common/config");
11
+ const validation_1 = require("../../../common/validation");
12
+ const connectInterceptors_1 = require("../../../common/connectInterceptors");
13
+ /**
14
+ * Node.js client for interacting with the meshtrade.iam.api_user.v1 apiuser v1 API resource service.
15
+ * Uses Connect-ES with gRPC transport for Node.js gRPC communication.
16
+ *
17
+ * Supports three authentication modes:
18
+ *
19
+ * 1. **No Authentication** (public APIs):
20
+ * ```typescript
21
+ * const client = new APIUserServiceNode({ apiServerURL: "http://localhost:10000" });
22
+ * ```
23
+ *
24
+ * 2. **API Key Authentication** (backend services):
25
+ * ```typescript
26
+ * const client = new APIUserServiceNode({
27
+ * apiServerURL: "https://api.example.com",
28
+ * apiKey: "your-api-key",
29
+ * group: "groups/01ARZ3NDEKTSV4YWVF8F5BH32"
30
+ * });
31
+ * ```
32
+ *
33
+ * 3. **JWT Token Authentication** (Next.js backend with user session):
34
+ * ```typescript
35
+ * const client = new APIUserServiceNode({
36
+ * apiServerURL: "https://api.example.com",
37
+ * jwtToken: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
38
+ * });
39
+ * ```
40
+ */
41
+ class APIUserServiceNode {
42
+ /**
43
+ * Constructs an instance of APIUserServiceNode.
44
+ * @param {ConfigOpts} [config] - Optional configuration for the client.
45
+ * @param {Interceptor[]} [interceptors] - For internal use by `withGroup`.
46
+ */
47
+ constructor(config, interceptors) {
48
+ this._config = (0, config_1.getConfigFromOpts)(config);
49
+ // If interceptors are provided (from withGroup), use them
50
+ // Otherwise, create auth interceptors based on config
51
+ if (interceptors) {
52
+ this._interceptors = interceptors;
53
+ }
54
+ else {
55
+ this._interceptors = [];
56
+ // Add authentication interceptor based on configuration
57
+ if (this._config.apiKey && this._config.group) {
58
+ // API Key authentication mode
59
+ this._interceptors.push((0, connectInterceptors_1.createApiKeyInterceptor)(this._config.apiKey, this._config.group));
60
+ }
61
+ else if (this._config.jwtToken) {
62
+ // JWT authentication mode
63
+ this._interceptors.push((0, connectInterceptors_1.createJwtInterceptor)(this._config.jwtToken));
64
+ }
65
+ // If neither is configured, no authentication (public API mode)
66
+ }
67
+ // Create the gRPC transport for Node.js with interceptors
68
+ // Note: gRPC transport uses HTTP/2 by default
69
+ const transport = (0, connect_node_1.createGrpcTransport)({
70
+ baseUrl: this._config.apiServerURL,
71
+ interceptors: this._interceptors,
72
+ });
73
+ // Construct the Connect-ES client
74
+ this._client = (0, connect_1.createClient)(service_pb_1.APIUserService, transport);
75
+ }
76
+ /**
77
+ * Returns a new client instance configured to send the specified group
78
+ * resource name in the request headers for subsequent API calls.
79
+ *
80
+ * **Important**: This method only works with API key authentication.
81
+ * - For **API key auth**: Creates a new client with updated group context
82
+ * - For **JWT auth**: Throws error (group comes from JWT token claims)
83
+ * - For **no auth**: Throws error (group requires authentication)
84
+ *
85
+ * @param {string} group - The operating group context to inject into the request
86
+ * in the format `groups/{ulid}` where {ulid} is a 26-character ULID.
87
+ * Example: 'groups/01ARZ3NDEKTSV4YWVF8F5BH32'
88
+ * @returns {APIUserServiceNode} A new, configured instance of the client.
89
+ * @throws {Error} If used with JWT authentication or no authentication
90
+ * @throws {Error} If the group format is invalid
91
+ */
92
+ withGroup(group) {
93
+ // Check authentication mode
94
+ if (this._config.jwtToken) {
95
+ throw new Error("Cannot use withGroup() with JWT authentication. " +
96
+ "The group context is determined by the JWT token claims.");
97
+ }
98
+ if (!this._config.apiKey) {
99
+ throw new Error("Cannot use withGroup() without authentication. " +
100
+ "Please configure API key authentication to use group context.");
101
+ }
102
+ // For API key authentication, create new client with updated group
103
+ // Replace the existing API key interceptor with one that has the new group
104
+ const newInterceptors = [
105
+ (0, connectInterceptors_1.createApiKeyInterceptor)(this._config.apiKey, group)
106
+ ];
107
+ // Return a new client instance with updated group context
108
+ return new APIUserServiceNode(this._config, newInterceptors);
109
+ }
110
+ /**
111
+ * Retrieves an apiuser.
112
+ * @param {GetAPIUserRequest} request - The request object for getapiuser.
113
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
114
+ */
115
+ getAPIUser(request) {
116
+ // Validate request
117
+ (0, validation_1.validateRequest)(request);
118
+ return this._client.getAPIUser(request);
119
+ }
120
+ /**
121
+ * Creates a new apiuser.
122
+ * @param {CreateAPIUserRequest} request - The request object for createapiuser.
123
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
124
+ */
125
+ createAPIUser(request) {
126
+ // Validate request
127
+ (0, validation_1.validateRequest)(request);
128
+ return this._client.createAPIUser(request);
129
+ }
130
+ /**
131
+ * Performs assignrolestoapiuser operation on apiuser.
132
+ * @param {AssignRolesToAPIUserRequest} request - The request object for assignrolestoapiuser.
133
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
134
+ */
135
+ assignRolesToAPIUser(request) {
136
+ // Validate request
137
+ (0, validation_1.validateRequest)(request);
138
+ return this._client.assignRolesToAPIUser(request);
139
+ }
140
+ /**
141
+ * Performs revokerolesfromapiuser operation on apiuser.
142
+ * @param {RevokeRolesFromAPIUserRequest} request - The request object for revokerolesfromapiuser.
143
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
144
+ */
145
+ revokeRolesFromAPIUser(request) {
146
+ // Validate request
147
+ (0, validation_1.validateRequest)(request);
148
+ return this._client.revokeRolesFromAPIUser(request);
149
+ }
150
+ /**
151
+ * Retrieves a list of apiusers.
152
+ * @param {ListAPIUsersRequest} request - The request object for listapiusers.
153
+ * @returns {Promise<ListAPIUsersResponse>} A promise that resolves with the list of apiusers.
154
+ */
155
+ listAPIUsers(request) {
156
+ // Validate request
157
+ (0, validation_1.validateRequest)(request);
158
+ return this._client.listAPIUsers(request);
159
+ }
160
+ /**
161
+ * Searches for apiusers.
162
+ * @param {SearchAPIUsersRequest} request - The request object for searchapiusers.
163
+ * @returns {Promise<SearchAPIUsersResponse>} A promise that resolves with the search results.
164
+ */
165
+ searchAPIUsers(request) {
166
+ // Validate request
167
+ (0, validation_1.validateRequest)(request);
168
+ return this._client.searchAPIUsers(request);
169
+ }
170
+ /**
171
+ * Activates an apiuser.
172
+ * @param {ActivateAPIUserRequest} request - The request object for activateapiuser.
173
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
174
+ */
175
+ activateAPIUser(request) {
176
+ // Validate request
177
+ (0, validation_1.validateRequest)(request);
178
+ return this._client.activateAPIUser(request);
179
+ }
180
+ /**
181
+ * Deactivates an apiuser.
182
+ * @param {DeactivateAPIUserRequest} request - The request object for deactivateapiuser.
183
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
184
+ */
185
+ deactivateAPIUser(request) {
186
+ // Validate request
187
+ (0, validation_1.validateRequest)(request);
188
+ return this._client.deactivateAPIUser(request);
189
+ }
190
+ /**
191
+ * Retrieves an apiuser.
192
+ * @param {GetAPIUserByKeyHashRequest} request - The request object for getapiuserbykeyhash.
193
+ * @returns {Promise<APIUser>} A promise that resolves with the apiuser.
194
+ */
195
+ getAPIUserByKeyHash(request) {
196
+ // Validate request
197
+ (0, validation_1.validateRequest)(request);
198
+ return this._client.getAPIUserByKeyHash(request);
199
+ }
200
+ }
201
+ exports.APIUserServiceNode = APIUserServiceNode;
@@ -0,0 +1,343 @@
1
+ import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
2
+ import type { APIUser, APIUserSchema } from "./api_user_pb";
3
+ import type { Message } from "@bufbuild/protobuf";
4
+ /**
5
+ * Describes the file meshtrade/iam/api_user/v1/service.proto.
6
+ */
7
+ export declare const file_meshtrade_iam_api_user_v1_service: GenFile;
8
+ /**
9
+ * @generated from message meshtrade.iam.api_user.v1.GetAPIUserRequest
10
+ */
11
+ export type GetAPIUserRequest = Message<"meshtrade.iam.api_user.v1.GetAPIUserRequest"> & {
12
+ /**
13
+ *
14
+ * Name of the API user to retrieve.
15
+ * Format: api_users/{ULIDv2}
16
+ *
17
+ * @generated from field: string name = 1;
18
+ */
19
+ name: string;
20
+ };
21
+ /**
22
+ * Describes the message meshtrade.iam.api_user.v1.GetAPIUserRequest.
23
+ * Use `create(GetAPIUserRequestSchema)` to create a new message.
24
+ */
25
+ export declare const GetAPIUserRequestSchema: GenMessage<GetAPIUserRequest>;
26
+ /**
27
+ * @generated from message meshtrade.iam.api_user.v1.GetAPIUserByKeyHashRequest
28
+ */
29
+ export type GetAPIUserByKeyHashRequest = Message<"meshtrade.iam.api_user.v1.GetAPIUserByKeyHashRequest"> & {
30
+ /**
31
+ *
32
+ * Key hash of the API user to get.
33
+ *
34
+ * @generated from field: string key_hash = 1;
35
+ */
36
+ keyHash: string;
37
+ };
38
+ /**
39
+ * Describes the message meshtrade.iam.api_user.v1.GetAPIUserByKeyHashRequest.
40
+ * Use `create(GetAPIUserByKeyHashRequestSchema)` to create a new message.
41
+ */
42
+ export declare const GetAPIUserByKeyHashRequestSchema: GenMessage<GetAPIUserByKeyHashRequest>;
43
+ /**
44
+ * @generated from message meshtrade.iam.api_user.v1.CreateAPIUserRequest
45
+ */
46
+ export type CreateAPIUserRequest = Message<"meshtrade.iam.api_user.v1.CreateAPIUserRequest"> & {
47
+ /**
48
+ *
49
+ * The API user resource to create.
50
+ * The name field will be ignored and assigned by the server.
51
+ *
52
+ * @generated from field: meshtrade.iam.api_user.v1.APIUser api_user = 1;
53
+ */
54
+ apiUser?: APIUser;
55
+ };
56
+ /**
57
+ * Describes the message meshtrade.iam.api_user.v1.CreateAPIUserRequest.
58
+ * Use `create(CreateAPIUserRequestSchema)` to create a new message.
59
+ */
60
+ export declare const CreateAPIUserRequestSchema: GenMessage<CreateAPIUserRequest>;
61
+ /**
62
+ * @generated from message meshtrade.iam.api_user.v1.AssignRolesToAPIUserRequest
63
+ */
64
+ export type AssignRolesToAPIUserRequest = Message<"meshtrade.iam.api_user.v1.AssignRolesToAPIUserRequest"> & {
65
+ /**
66
+ *
67
+ * Name of the API user to assign roles to in the format api_users/{ULIDv2}.
68
+ *
69
+ * @generated from field: string name = 1;
70
+ */
71
+ name: string;
72
+ /**
73
+ *
74
+ * Roles to assign to the API user in the format groups/{ULIDv2}/roles/{role_id}.
75
+ * The role_id corresponds to a value from the meshtrade.iam.role.v1.Role enum.
76
+ *
77
+ * @generated from field: repeated string roles = 2;
78
+ */
79
+ roles: string[];
80
+ };
81
+ /**
82
+ * Describes the message meshtrade.iam.api_user.v1.AssignRolesToAPIUserRequest.
83
+ * Use `create(AssignRolesToAPIUserRequestSchema)` to create a new message.
84
+ */
85
+ export declare const AssignRolesToAPIUserRequestSchema: GenMessage<AssignRolesToAPIUserRequest>;
86
+ /**
87
+ * @generated from message meshtrade.iam.api_user.v1.RevokeRolesFromAPIUserRequest
88
+ */
89
+ export type RevokeRolesFromAPIUserRequest = Message<"meshtrade.iam.api_user.v1.RevokeRolesFromAPIUserRequest"> & {
90
+ /**
91
+ *
92
+ * Name of the API user to revoke roles from in the format api_users/{ULIDv2}.
93
+ *
94
+ * @generated from field: string name = 1;
95
+ */
96
+ name: string;
97
+ /**
98
+ *
99
+ * Roles to revoke from the API user in the format groups/{ULIDv2}/roles/{role_id}.
100
+ * The role_id corresponds to a value from the meshtrade.iam.role.v1.Role enum.
101
+ *
102
+ * @generated from field: repeated string roles = 2;
103
+ */
104
+ roles: string[];
105
+ };
106
+ /**
107
+ * Describes the message meshtrade.iam.api_user.v1.RevokeRolesFromAPIUserRequest.
108
+ * Use `create(RevokeRolesFromAPIUserRequestSchema)` to create a new message.
109
+ */
110
+ export declare const RevokeRolesFromAPIUserRequestSchema: GenMessage<RevokeRolesFromAPIUserRequest>;
111
+ /**
112
+ * @generated from message meshtrade.iam.api_user.v1.ListAPIUsersRequest
113
+ */
114
+ export type ListAPIUsersRequest = Message<"meshtrade.iam.api_user.v1.ListAPIUsersRequest"> & {};
115
+ /**
116
+ * Describes the message meshtrade.iam.api_user.v1.ListAPIUsersRequest.
117
+ * Use `create(ListAPIUsersRequestSchema)` to create a new message.
118
+ */
119
+ export declare const ListAPIUsersRequestSchema: GenMessage<ListAPIUsersRequest>;
120
+ /**
121
+ * @generated from message meshtrade.iam.api_user.v1.ListAPIUsersResponse
122
+ */
123
+ export type ListAPIUsersResponse = Message<"meshtrade.iam.api_user.v1.ListAPIUsersResponse"> & {
124
+ /**
125
+ * @generated from field: repeated meshtrade.iam.api_user.v1.APIUser api_users = 1;
126
+ */
127
+ apiUsers: APIUser[];
128
+ };
129
+ /**
130
+ * Describes the message meshtrade.iam.api_user.v1.ListAPIUsersResponse.
131
+ * Use `create(ListAPIUsersResponseSchema)` to create a new message.
132
+ */
133
+ export declare const ListAPIUsersResponseSchema: GenMessage<ListAPIUsersResponse>;
134
+ /**
135
+ * @generated from message meshtrade.iam.api_user.v1.SearchAPIUsersRequest
136
+ */
137
+ export type SearchAPIUsersRequest = Message<"meshtrade.iam.api_user.v1.SearchAPIUsersRequest"> & {
138
+ /**
139
+ *
140
+ * Display name is a substring search for API users.
141
+ *
142
+ * @generated from field: string display_name = 1;
143
+ */
144
+ displayName: string;
145
+ };
146
+ /**
147
+ * Describes the message meshtrade.iam.api_user.v1.SearchAPIUsersRequest.
148
+ * Use `create(SearchAPIUsersRequestSchema)` to create a new message.
149
+ */
150
+ export declare const SearchAPIUsersRequestSchema: GenMessage<SearchAPIUsersRequest>;
151
+ /**
152
+ * @generated from message meshtrade.iam.api_user.v1.SearchAPIUsersResponse
153
+ */
154
+ export type SearchAPIUsersResponse = Message<"meshtrade.iam.api_user.v1.SearchAPIUsersResponse"> & {
155
+ /**
156
+ * @generated from field: repeated meshtrade.iam.api_user.v1.APIUser api_users = 1;
157
+ */
158
+ apiUsers: APIUser[];
159
+ };
160
+ /**
161
+ * Describes the message meshtrade.iam.api_user.v1.SearchAPIUsersResponse.
162
+ * Use `create(SearchAPIUsersResponseSchema)` to create a new message.
163
+ */
164
+ export declare const SearchAPIUsersResponseSchema: GenMessage<SearchAPIUsersResponse>;
165
+ /**
166
+ * @generated from message meshtrade.iam.api_user.v1.ActivateAPIUserRequest
167
+ */
168
+ export type ActivateAPIUserRequest = Message<"meshtrade.iam.api_user.v1.ActivateAPIUserRequest"> & {
169
+ /**
170
+ *
171
+ * Name of the API user to activate.
172
+ * Format: api_users/{ULIDv2}
173
+ *
174
+ * @generated from field: string name = 1;
175
+ */
176
+ name: string;
177
+ };
178
+ /**
179
+ * Describes the message meshtrade.iam.api_user.v1.ActivateAPIUserRequest.
180
+ * Use `create(ActivateAPIUserRequestSchema)` to create a new message.
181
+ */
182
+ export declare const ActivateAPIUserRequestSchema: GenMessage<ActivateAPIUserRequest>;
183
+ /**
184
+ * @generated from message meshtrade.iam.api_user.v1.DeactivateAPIUserRequest
185
+ */
186
+ export type DeactivateAPIUserRequest = Message<"meshtrade.iam.api_user.v1.DeactivateAPIUserRequest"> & {
187
+ /**
188
+ *
189
+ * Name of the API user to deactivate.
190
+ * Format: api_users/{ULIDv2}
191
+ *
192
+ * @generated from field: string name = 1;
193
+ */
194
+ name: string;
195
+ };
196
+ /**
197
+ * Describes the message meshtrade.iam.api_user.v1.DeactivateAPIUserRequest.
198
+ * Use `create(DeactivateAPIUserRequestSchema)` to create a new message.
199
+ */
200
+ export declare const DeactivateAPIUserRequestSchema: GenMessage<DeactivateAPIUserRequest>;
201
+ /**
202
+ *
203
+ * APIUserService manages API user lifecycle and authentication credentials.
204
+ *
205
+ * API users represent automated clients that can authenticate with API keys
206
+ * and perform operations within a specific group context. Each API user has:
207
+ * - A unique identifier and display name
208
+ * - Group ownership for resource isolation
209
+ * - Role-based permissions for authorization
210
+ * - Active/inactive state for access control
211
+ *
212
+ * All operations require IAM domain permissions and operate within
213
+ * the authenticated group context.
214
+ *
215
+ * @generated from service meshtrade.iam.api_user.v1.APIUserService
216
+ */
217
+ export declare const APIUserService: GenService<{
218
+ /**
219
+ *
220
+ * Retrieves a single API user by its unique identifier.
221
+ *
222
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.GetAPIUser
223
+ */
224
+ getAPIUser: {
225
+ methodKind: "unary";
226
+ input: typeof GetAPIUserRequestSchema;
227
+ output: typeof APIUserSchema;
228
+ };
229
+ /**
230
+ *
231
+ * Creates a new API user with the specified configuration.
232
+ *
233
+ * The API user will be created in the authenticated group context
234
+ * and assigned the provided roles. The system generates a unique
235
+ * identifier and API key for authentication.
236
+ *
237
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.CreateAPIUser
238
+ */
239
+ createAPIUser: {
240
+ methodKind: "unary";
241
+ input: typeof CreateAPIUserRequestSchema;
242
+ output: typeof APIUserSchema;
243
+ };
244
+ /**
245
+ *
246
+ * Assign roles to an existing api user within the authenticated group context.
247
+ *
248
+ * The role assignment enables the api user to perform operations according
249
+ * to the permissions associated with that role within the group hierarchy.
250
+ *
251
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.AssignRolesToAPIUser
252
+ */
253
+ assignRolesToAPIUser: {
254
+ methodKind: "unary";
255
+ input: typeof AssignRolesToAPIUserRequestSchema;
256
+ output: typeof APIUserSchema;
257
+ };
258
+ /**
259
+ *
260
+ * Revoke roles from an existing API user within the authenticated group context.
261
+ *
262
+ * The role revocation removes the permissions associated with that role from
263
+ * the API user within the group hierarchy. The API user will no longer be able
264
+ * to perform operations that require the revoked role.
265
+ *
266
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.RevokeRolesFromAPIUser
267
+ */
268
+ revokeRolesFromAPIUser: {
269
+ methodKind: "unary";
270
+ input: typeof RevokeRolesFromAPIUserRequestSchema;
271
+ output: typeof APIUserSchema;
272
+ };
273
+ /**
274
+ *
275
+ * Lists all API users in the authenticated group context.
276
+ *
277
+ * Returns all API users that belong to the current group,
278
+ * regardless of their active/inactive state.
279
+ *
280
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.ListAPIUsers
281
+ */
282
+ listAPIUsers: {
283
+ methodKind: "unary";
284
+ input: typeof ListAPIUsersRequestSchema;
285
+ output: typeof ListAPIUsersResponseSchema;
286
+ };
287
+ /**
288
+ *
289
+ * Searches API users using display name filtering.
290
+ *
291
+ * Performs substring matching on API user display names
292
+ * within the authenticated group context.
293
+ *
294
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.SearchAPIUsers
295
+ */
296
+ searchAPIUsers: {
297
+ methodKind: "unary";
298
+ input: typeof SearchAPIUsersRequestSchema;
299
+ output: typeof SearchAPIUsersResponseSchema;
300
+ };
301
+ /**
302
+ *
303
+ * Activates an API user, enabling API key authentication.
304
+ *
305
+ * Changes the API user state to active, allowing the associated
306
+ * API key to be used for authentication and authorization.
307
+ *
308
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.ActivateAPIUser
309
+ */
310
+ activateAPIUser: {
311
+ methodKind: "unary";
312
+ input: typeof ActivateAPIUserRequestSchema;
313
+ output: typeof APIUserSchema;
314
+ };
315
+ /**
316
+ *
317
+ * Deactivates an API user, disabling API key authentication.
318
+ *
319
+ * Changes the API user state to inactive, preventing the associated
320
+ * API key from being used for authentication.
321
+ *
322
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.DeactivateAPIUser
323
+ */
324
+ deactivateAPIUser: {
325
+ methodKind: "unary";
326
+ input: typeof DeactivateAPIUserRequestSchema;
327
+ output: typeof APIUserSchema;
328
+ };
329
+ /**
330
+ *
331
+ * Retrieves an API user using its API key hash.
332
+ *
333
+ * This method is used for authentication flows to lookup
334
+ * an API user based on the hash of their API key.
335
+ *
336
+ * @generated from rpc meshtrade.iam.api_user.v1.APIUserService.GetAPIUserByKeyHash
337
+ */
338
+ getAPIUserByKeyHash: {
339
+ methodKind: "unary";
340
+ input: typeof GetAPIUserByKeyHashRequestSchema;
341
+ output: typeof APIUserSchema;
342
+ };
343
+ }>;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ // @generated by protoc-gen-es v2.10.1 with parameter "target=ts"
3
+ // @generated from file meshtrade/iam/api_user/v1/service.proto (package meshtrade.iam.api_user.v1, syntax proto3)
4
+ /* eslint-disable */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.APIUserService = exports.DeactivateAPIUserRequestSchema = exports.ActivateAPIUserRequestSchema = exports.SearchAPIUsersResponseSchema = exports.SearchAPIUsersRequestSchema = exports.ListAPIUsersResponseSchema = exports.ListAPIUsersRequestSchema = exports.RevokeRolesFromAPIUserRequestSchema = exports.AssignRolesToAPIUserRequestSchema = exports.CreateAPIUserRequestSchema = exports.GetAPIUserByKeyHashRequestSchema = exports.GetAPIUserRequestSchema = exports.file_meshtrade_iam_api_user_v1_service = void 0;
7
+ const codegenv2_1 = require("@bufbuild/protobuf/codegenv2");
8
+ const validate_pb_1 = require("../../../../buf/validate/validate_pb");
9
+ const api_user_pb_1 = require("./api_user_pb");
10
+ const method_options_pb_1 = require("../../../option/method_options/v1/method_options_pb");
11
+ /**
12
+ * Describes the file meshtrade/iam/api_user/v1/service.proto.
13
+ */
14
+ exports.file_meshtrade_iam_api_user_v1_service = (0, codegenv2_1.fileDesc)("CidtZXNodHJhZGUvaWFtL2FwaV91c2VyL3YxL3NlcnZpY2UucHJvdG8SGW1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEiYgoRR2V0QVBJVXNlclJlcXVlc3QSTQoEbmFtZRgBIAEoCUI/ukg8yAEBcjcyMl5hcGlfdXNlcnMvWzAxMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFZXWFlaXXsyNn0kmAEkIlEKGkdldEFQSVVzZXJCeUtleUhhc2hSZXF1ZXN0EjMKCGtleV9oYXNoGAEgASgJQiG6SB7IAQFyGTIUXltBLVphLXowLTkrL117NDN9PSSYASwiVAoUQ3JlYXRlQVBJVXNlclJlcXVlc3QSPAoIYXBpX3VzZXIYASABKAsyIi5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkFQSVVzZXJCBrpIA8gBASLVAQobQXNzaWduUm9sZXNUb0FQSVVzZXJSZXF1ZXN0Ek0KBG5hbWUYASABKAlCP7pIPMgBAXI3MjJeYXBpX3VzZXJzL1swMTIzNDU2Nzg5QUJDREVGR0hKS01OUFFSU1RWV1hZWl17MjZ9JJgBJBJnCgVyb2xlcxgCIAMoCUJYukhVyAEBkgFPIk1ySxAvGDAyRV5ncm91cHMvWzAxMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFZXWFlaXXsyNn0vcm9sZXMvWzEtOV1bMC05XXs2LDd9JCLXAQodUmV2b2tlUm9sZXNGcm9tQVBJVXNlclJlcXVlc3QSTQoEbmFtZRgBIAEoCUI/ukg8yAEBcjcyMl5hcGlfdXNlcnMvWzAxMjM0NTY3ODlBQkNERUZHSEpLTU5QUVJTVFZXWFlaXXsyNn0kmAEkEmcKBXJvbGVzGAIgAygJQli6SFXIAQGSAU8iTXJLEC8YMDJFXmdyb3Vwcy9bMDEyMzQ1Njc4OUFCQ0RFRkdISktNTlBRUlNUVldYWVpdezI2fS9yb2xlcy9bMS05XVswLTldezYsN30kIhUKE0xpc3RBUElVc2Vyc1JlcXVlc3QiTQoUTGlzdEFQSVVzZXJzUmVzcG9uc2USNQoJYXBpX3VzZXJzGAEgAygLMiIubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5BUElVc2VyIi0KFVNlYXJjaEFQSVVzZXJzUmVxdWVzdBIUCgxkaXNwbGF5X25hbWUYASABKAkiTwoWU2VhcmNoQVBJVXNlcnNSZXNwb25zZRI1CglhcGlfdXNlcnMYASADKAsyIi5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkFQSVVzZXIiZwoWQWN0aXZhdGVBUElVc2VyUmVxdWVzdBJNCgRuYW1lGAEgASgJQj+6SDzIAQFyNzIyXmFwaV91c2Vycy9bMDEyMzQ1Njc4OUFCQ0RFRkdISktNTlBRUlNUVldYWVpdezI2fSSYASQiaQoYRGVhY3RpdmF0ZUFQSVVzZXJSZXF1ZXN0Ek0KBG5hbWUYASABKAlCP7pIPMgBAXI3MjJeYXBpX3VzZXJzL1swMTIzNDU2Nzg5QUJDREVGR0hKS01OUFFSU1RWV1hZWl17MjZ9JJgBJDLOCQoOQVBJVXNlclNlcnZpY2USegoKR2V0QVBJVXNlchIsLm1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEuR2V0QVBJVXNlclJlcXVlc3QaIi5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkFQSVVzZXIiGrK1GBYIARACGhDAjbcBwY23AcKNtwHDjbcBEngKDUNyZWF0ZUFQSVVzZXISLy5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkNyZWF0ZUFQSVVzZXJSZXF1ZXN0GiIubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5BUElVc2VyIhKytRgOCAIQAhoIwI23AcKNtwEShgEKFEFzc2lnblJvbGVzVG9BUElVc2VyEjYubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5Bc3NpZ25Sb2xlc1RvQVBJVXNlclJlcXVlc3QaIi5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkFQSVVzZXIiErK1GA4IAhACGgjAjbcBwo23ARKKAQoWUmV2b2tlUm9sZXNGcm9tQVBJVXNlchI4Lm1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEuUmV2b2tlUm9sZXNGcm9tQVBJVXNlclJlcXVlc3QaIi5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkFQSVVzZXIiErK1GA4IAhACGgjAjbcBwo23ARKLAQoMTGlzdEFQSVVzZXJzEi4ubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5MaXN0QVBJVXNlcnNSZXF1ZXN0Gi8ubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5MaXN0QVBJVXNlcnNSZXNwb25zZSIasrUYFggBEAIaEMCNtwHBjbcBwo23AcONtwESkQEKDlNlYXJjaEFQSVVzZXJzEjAubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5TZWFyY2hBUElVc2Vyc1JlcXVlc3QaMS5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLlNlYXJjaEFQSVVzZXJzUmVzcG9uc2UiGrK1GBYIARACGhDAjbcBwY23AcKNtwHDjbcBEnwKD0FjdGl2YXRlQVBJVXNlchIxLm1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEuQWN0aXZhdGVBUElVc2VyUmVxdWVzdBoiLm1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEuQVBJVXNlciISsrUYDggCEAIaCMCNtwHCjbcBEoABChFEZWFjdGl2YXRlQVBJVXNlchIzLm1lc2h0cmFkZS5pYW0uYXBpX3VzZXIudjEuRGVhY3RpdmF0ZUFQSVVzZXJSZXF1ZXN0GiIubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5BUElVc2VyIhKytRgOCAIQAhoIwI23AcKNtwESjAEKE0dldEFQSVVzZXJCeUtleUhhc2gSNS5tZXNodHJhZGUuaWFtLmFwaV91c2VyLnYxLkdldEFQSVVzZXJCeUtleUhhc2hSZXF1ZXN0GiIubWVzaHRyYWRlLmlhbS5hcGlfdXNlci52MS5BUElVc2VyIhqytRgWCAEQAhoQwI23AcGNtwHCjbcBw423AUJbCiBjby5tZXNodHJhZGUuYXBpLmlhbS5hcGlfdXNlci52MVo3Z2l0aHViLmNvbS9tZXNodHJhZGUvYXBpL2dvL2lhbS9hcGlfdXNlci92MTthcGlfdXNlcl92MWIGcHJvdG8z", [validate_pb_1.file_buf_validate_validate, api_user_pb_1.file_meshtrade_iam_api_user_v1_api_user, method_options_pb_1.file_meshtrade_option_method_options_v1_method_options]);
15
+ /**
16
+ * Describes the message meshtrade.iam.api_user.v1.GetAPIUserRequest.
17
+ * Use `create(GetAPIUserRequestSchema)` to create a new message.
18
+ */
19
+ exports.GetAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 0);
20
+ /**
21
+ * Describes the message meshtrade.iam.api_user.v1.GetAPIUserByKeyHashRequest.
22
+ * Use `create(GetAPIUserByKeyHashRequestSchema)` to create a new message.
23
+ */
24
+ exports.GetAPIUserByKeyHashRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 1);
25
+ /**
26
+ * Describes the message meshtrade.iam.api_user.v1.CreateAPIUserRequest.
27
+ * Use `create(CreateAPIUserRequestSchema)` to create a new message.
28
+ */
29
+ exports.CreateAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 2);
30
+ /**
31
+ * Describes the message meshtrade.iam.api_user.v1.AssignRolesToAPIUserRequest.
32
+ * Use `create(AssignRolesToAPIUserRequestSchema)` to create a new message.
33
+ */
34
+ exports.AssignRolesToAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 3);
35
+ /**
36
+ * Describes the message meshtrade.iam.api_user.v1.RevokeRolesFromAPIUserRequest.
37
+ * Use `create(RevokeRolesFromAPIUserRequestSchema)` to create a new message.
38
+ */
39
+ exports.RevokeRolesFromAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 4);
40
+ /**
41
+ * Describes the message meshtrade.iam.api_user.v1.ListAPIUsersRequest.
42
+ * Use `create(ListAPIUsersRequestSchema)` to create a new message.
43
+ */
44
+ exports.ListAPIUsersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 5);
45
+ /**
46
+ * Describes the message meshtrade.iam.api_user.v1.ListAPIUsersResponse.
47
+ * Use `create(ListAPIUsersResponseSchema)` to create a new message.
48
+ */
49
+ exports.ListAPIUsersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 6);
50
+ /**
51
+ * Describes the message meshtrade.iam.api_user.v1.SearchAPIUsersRequest.
52
+ * Use `create(SearchAPIUsersRequestSchema)` to create a new message.
53
+ */
54
+ exports.SearchAPIUsersRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 7);
55
+ /**
56
+ * Describes the message meshtrade.iam.api_user.v1.SearchAPIUsersResponse.
57
+ * Use `create(SearchAPIUsersResponseSchema)` to create a new message.
58
+ */
59
+ exports.SearchAPIUsersResponseSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 8);
60
+ /**
61
+ * Describes the message meshtrade.iam.api_user.v1.ActivateAPIUserRequest.
62
+ * Use `create(ActivateAPIUserRequestSchema)` to create a new message.
63
+ */
64
+ exports.ActivateAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 9);
65
+ /**
66
+ * Describes the message meshtrade.iam.api_user.v1.DeactivateAPIUserRequest.
67
+ * Use `create(DeactivateAPIUserRequestSchema)` to create a new message.
68
+ */
69
+ exports.DeactivateAPIUserRequestSchema = (0, codegenv2_1.messageDesc)(exports.file_meshtrade_iam_api_user_v1_service, 10);
70
+ /**
71
+ *
72
+ * APIUserService manages API user lifecycle and authentication credentials.
73
+ *
74
+ * API users represent automated clients that can authenticate with API keys
75
+ * and perform operations within a specific group context. Each API user has:
76
+ * - A unique identifier and display name
77
+ * - Group ownership for resource isolation
78
+ * - Role-based permissions for authorization
79
+ * - Active/inactive state for access control
80
+ *
81
+ * All operations require IAM domain permissions and operate within
82
+ * the authenticated group context.
83
+ *
84
+ * @generated from service meshtrade.iam.api_user.v1.APIUserService
85
+ */
86
+ exports.APIUserService = (0, codegenv2_1.serviceDesc)(exports.file_meshtrade_iam_api_user_v1_service, 0);