@webb-tools/tangle-substrate-types 0.9.9 → 0.9.10

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 (2) hide show
  1. package/build/index.d.ts +947 -172
  2. package/package.json +1 -1
package/build/index.d.ts CHANGED
@@ -4219,7 +4219,7 @@ declare module '@polkadot/api-base/types/events' {
4219
4219
  };
4220
4220
  lst: {
4221
4221
  /**
4222
- * A member has became bonded in a pool.
4222
+ * A member has become bonded in a pool.
4223
4223
  **/
4224
4224
  Bonded: AugmentedEvent<ApiType, [member: AccountId32, poolId: u32, bonded: u128, joined: bool], {
4225
4225
  member: AccountId32;
@@ -4257,7 +4257,7 @@ declare module '@polkadot/api-base/types/events' {
4257
4257
  amount: u128;
4258
4258
  }>;
4259
4259
  /**
4260
- * Claimed excess frozen ED of af the reward pool.
4260
+ * Claimed excess frozen ED of the reward pool.
4261
4261
  **/
4262
4262
  MinBalanceExcessAdjusted: AugmentedEvent<ApiType, [poolId: u32, amount: u128], {
4263
4263
  poolId: u32;
@@ -4360,7 +4360,7 @@ declare module '@polkadot/api-base/types/events' {
4360
4360
  /**
4361
4361
  * A member has withdrawn from their pool.
4362
4362
  *
4363
- * The given number of `points` have been dissolved in return of `balance`.
4363
+ * The given number of `points` have been dissolved in return for `balance`.
4364
4364
  *
4365
4365
  * Similar to `Unbonded` event, in the absence of slashing, the ratio of point to balance
4366
4366
  * will be 1.
@@ -10032,30 +10032,66 @@ declare module '@polkadot/api-base/types/submittable' {
10032
10032
  * insufficient to cover the ED deficit of the pool or vice-versa where there is excess
10033
10033
  * deposit to the pool. This call allows anyone to adjust the ED deposit of the
10034
10034
  * pool by either topping up the deficit or claiming the excess.
10035
+ *
10036
+ * # Arguments
10037
+ *
10038
+ * * `origin` - The origin of the call. Must be signed.
10039
+ * * `pool_id` - The identifier of the pool to adjust the deposit for.
10035
10040
  **/
10036
10041
  adjustPoolDeposit: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
10037
10042
  /**
10038
- * Bond `extra` more funds from `origin` into the pool to which they already belong.
10043
+ * Bond additional funds into an existing pool position.
10039
10044
  *
10040
- * Additional funds can come from either the free balance of the account, of from the
10041
- * accumulated rewards, see [`BondExtra`].
10045
+ * Additional funds can come from either free balance or accumulated rewards.
10046
+ * Automatically pays out all pending rewards.
10042
10047
  *
10043
- * Bonding extra funds implies an automatic payout of all pending rewards as well.
10044
- * See `bond_extra_other` to bond pending rewards of `other` members.
10048
+ * # Arguments
10049
+ *
10050
+ * * `origin` - Origin of the call
10051
+ * * `pool_id` - Target pool ID
10052
+ * * `extra` - Source and amount of additional funds
10053
+ *
10054
+ * # Permissions
10055
+ *
10056
+ * * Must be signed
10057
+ * * Must have permission to bond extra if not self
10058
+ *
10059
+ * # Errors
10060
+ *
10061
+ * * [`Error::PoolNotFound`] - Pool does not exist
10062
+ * * [`Error::DoesNotHavePermission`] - Caller lacks permission
10063
+ * * [`Error::DefensiveError`] - Reward pool not found
10064
+ *
10065
+ * # Note
10066
+ *
10067
+ * * This transaction prioritizes readability and correctness over optimization
10068
+ * * Multiple storage reads/writes are performed to reuse code
10069
+ * * See `bond_extra_other` to bond pending rewards of other members
10045
10070
  **/
10046
10071
  bondExtra: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, extra: PalletTangleLstBondExtra | {
10047
10072
  FreeBalance: any;
10048
10073
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletTangleLstBondExtra]>;
10049
10074
  /**
10050
- * `origin` bonds funds from `extra` for some pool member `member` into their respective
10051
- * pools.
10075
+ * Bond additional funds for a pool member into their respective pool.
10052
10076
  *
10053
- * `origin` can bond extra funds from free balance or pending rewards when `origin ==
10054
- * other`.
10077
+ * # Permissions
10055
10078
  *
10056
- * In the case of `origin != other`, `origin` can only bond extra pending rewards of
10057
- * `other` members assuming set_claim_permission for the given member is
10058
- * `PermissionlessAll` or `PermissionlessCompound`.
10079
+ * * Origin must match member account for bonding from free balance/pending rewards
10080
+ * * Any origin can bond from pending rewards if member has `PermissionlessAll` or
10081
+ * `PermissionlessCompound` claim permissions
10082
+ *
10083
+ * # Arguments
10084
+ *
10085
+ * * `origin` - The origin of the call
10086
+ * * `member` - Pool member account to bond for
10087
+ * * `pool_id` - Pool identifier
10088
+ * * `extra` - Amount to bond from free balance or pending rewards
10089
+ *
10090
+ * # Errors
10091
+ *
10092
+ * * [`Error::PoolNotFound`] - Pool does not exist
10093
+ * * [`Error::PoolMemberNotFound`] - Account is not a member of pool
10094
+ * * [`Error::NoPermission`] - Origin lacks permission to bond for member
10059
10095
  **/
10060
10096
  bondExtraOther: AugmentedSubmittable<(member: MultiAddress | {
10061
10097
  Id: any;
@@ -10071,41 +10107,60 @@ declare module '@polkadot/api-base/types/submittable' {
10071
10107
  FreeBalance: any;
10072
10108
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u32, PalletTangleLstBondExtra]>;
10073
10109
  /**
10074
- * Chill on behalf of the pool.
10110
+ * Chill on behalf of the pool by forwarding the call to the staking pallet.
10075
10111
  *
10076
- * The dispatch origin of this call must be signed by the pool nominator or the pool
10077
- * root role, same as [`Pallet::nominate`].
10112
+ * # Permissions
10078
10113
  *
10079
- * This directly forward the call to the staking pallet, on behalf of the pool bonded
10080
- * account.
10114
+ * * Origin must be signed by pool nominator or root role
10115
+ *
10116
+ * # Arguments
10117
+ *
10118
+ * * `origin` - The origin of the call
10119
+ * * `pool_id` - Pool identifier
10120
+ *
10121
+ * # Errors
10122
+ *
10123
+ * * [`Error::PoolNotFound`] - Pool does not exist
10124
+ * * [`Error::NotNominator`] - Origin lacks nomination permission
10081
10125
  **/
10082
10126
  chill: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
10083
10127
  /**
10084
- * Claim pending commission.
10128
+ * Claim pending commission for a pool.
10085
10129
  *
10086
- * The dispatch origin of this call must be signed by the `root` role of the pool. Pending
10087
- * commission is paid out and added to total claimed commission`. Total pending commission
10088
- * is reset to zero. the current.
10130
+ * The dispatch origin of this call must be signed by an account with commission claim permission.
10131
+ * Pending commission is paid out and added to total claimed commission. Total pending commission
10132
+ * is reset to zero.
10133
+ *
10134
+ * # Arguments
10135
+ *
10136
+ * * `origin` - The origin of the call. Must be signed by an account with commission claim permission.
10137
+ * * `pool_id` - The identifier of the pool to claim commission from.
10089
10138
  **/
10090
10139
  claimCommission: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
10091
10140
  /**
10092
10141
  * Create a new delegation pool.
10093
10142
  *
10143
+ * # Permissions
10144
+ *
10145
+ * * Must be signed by the account that will become the initial depositor
10146
+ *
10094
10147
  * # Arguments
10095
10148
  *
10096
- * * `amount` - The amount of funds to delegate to the pool. This also acts of a sort of
10097
- * deposit since the pools creator cannot fully unbond funds until the pool is being
10098
- * destroyed.
10099
- * * `index` - A disambiguation index for creating the account. Likely only useful when
10100
- * creating multiple pools in the same extrinsic.
10101
- * * `root` - The account to set as [`PoolRoles::root`].
10102
- * * `nominator` - The account to set as the [`PoolRoles::nominator`].
10103
- * * `bouncer` - The account to set as the [`PoolRoles::bouncer`].
10149
+ * * `origin` - Origin of the call
10150
+ * * `amount` - Amount to delegate to the pool
10151
+ * * `root` - Account to set as pool root
10152
+ * * `nominator` - Account to set as pool nominator
10153
+ * * `bouncer` - Account to set as pool bouncer
10154
+ * * `name` - Optional pool name bounded by `T::MaxNameLength`
10155
+ * * `icon` - Optional pool icon bounded by `T::MaxIconLength`
10156
+ *
10157
+ * # Errors
10158
+ *
10159
+ * * [`Error::OverflowRisk`] - Pool ID increment would overflow
10104
10160
  *
10105
10161
  * # Note
10106
10162
  *
10107
- * In addition to `amount`, the caller will transfer the existential deposit; so the caller
10108
- * needs at have at least `amount + existential_deposit` transferable.
10163
+ * Caller must have `amount + existential_deposit` transferable funds.
10109
10164
  **/
10110
10165
  create: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, root: MultiAddress | {
10111
10166
  Id: any;
@@ -10139,12 +10194,31 @@ declare module '@polkadot/api-base/types/submittable' {
10139
10194
  Address20: any;
10140
10195
  } | string | Uint8Array, name: Option<Bytes> | null | Uint8Array | Bytes | string, icon: Option<Bytes> | null | Uint8Array | Bytes | string) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress, MultiAddress, MultiAddress, Option<Bytes>, Option<Bytes>]>;
10141
10196
  /**
10142
- * Create a new delegation pool with a previously used pool id
10197
+ * Create a new delegation pool with a previously used pool ID.
10198
+ *
10199
+ * # Permissions
10200
+ *
10201
+ * * Must be signed by the account that will become the depositor
10143
10202
  *
10144
10203
  * # Arguments
10145
10204
  *
10146
- * same as `create` with the inclusion of
10147
- * * `pool_id` - `A valid PoolId.
10205
+ * * `origin` - Origin of the call
10206
+ * * `amount` - Amount to delegate to the pool
10207
+ * * `root` - Account to set as pool root
10208
+ * * `nominator` - Account to set as pool nominator
10209
+ * * `bouncer` - Account to set as pool bouncer
10210
+ * * `pool_id` - Pool ID to reuse
10211
+ * * `name` - Optional pool name
10212
+ * * `icon` - Optional pool icon
10213
+ *
10214
+ * # Errors
10215
+ *
10216
+ * * [`Error::PoolIdInUse`] - Pool ID is already in use
10217
+ * * [`Error::InvalidPoolId`] - Pool ID is greater than last pool ID
10218
+ *
10219
+ * # Note
10220
+ *
10221
+ * Caller must have `amount + existential_deposit` transferable funds.
10148
10222
  **/
10149
10223
  createWithPoolId: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, root: MultiAddress | {
10150
10224
  Id: any;
@@ -10178,41 +10252,92 @@ declare module '@polkadot/api-base/types/submittable' {
10178
10252
  Address20: any;
10179
10253
  } | string | Uint8Array, poolId: u32 | AnyNumber | Uint8Array, name: Option<Bytes> | null | Uint8Array | Bytes | string, icon: Option<Bytes> | null | Uint8Array | Bytes | string) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress, MultiAddress, MultiAddress, u32, Option<Bytes>, Option<Bytes>]>;
10180
10254
  /**
10181
- * Stake funds with a pool. The amount to bond is transferred from the member to the
10182
- * pools account and immediately increases the pools bond.
10255
+ * Stakes funds with a pool by transferring the bonded amount from member to pool account.
10256
+ *
10257
+ * # Permissions
10258
+ *
10259
+ * * Must be signed
10260
+ *
10261
+ * # Arguments
10262
+ *
10263
+ * * `origin` - Origin of the call
10264
+ * * `amount` - Amount to stake
10265
+ * * `pool_id` - Target pool ID
10266
+ *
10267
+ * # Errors
10268
+ *
10269
+ * * [`Error::MinimumBondNotMet`] - Amount below minimum bond
10270
+ * * [`Error::PoolNotFound`] - Pool does not exist
10271
+ * * [`Error::DefensiveError`] - Reward pool not found
10183
10272
  *
10184
10273
  * # Note
10185
10274
  *
10186
- * * This call will *not* dust the member account, so the member must have at least
10187
- * `existential deposit + amount` in their account.
10188
- * * Only a pool with [`PoolState::Open`] can be joined
10275
+ * * Member must have `existential deposit + amount` in account
10276
+ * * Pool must be in [`PoolState::Open`] state
10189
10277
  **/
10190
10278
  join: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, u32]>;
10191
10279
  /**
10192
- * Nominate on behalf of the pool.
10280
+ * Nominate validators on behalf of the pool.
10193
10281
  *
10194
- * The dispatch origin of this call must be signed by the pool nominator or the pool
10195
- * root role.
10282
+ * # Permissions
10196
10283
  *
10197
- * This directly forward the call to the staking pallet, on behalf of the pool bonded
10198
- * account.
10284
+ * * Pool nominator or root role can nominate validators
10285
+ *
10286
+ * # Arguments
10287
+ *
10288
+ * * `origin` - Origin of the call
10289
+ * * `pool_id` - Pool identifier
10290
+ * * `validators` - List of validator accounts to nominate
10291
+ *
10292
+ * # Errors
10293
+ *
10294
+ * * [`Error::PoolNotFound`] - Pool does not exist
10295
+ * * [`Error::NotNominator`] - Caller lacks nominator permissions
10296
+ *
10297
+ * # Note
10298
+ *
10299
+ * Forwards nomination call to staking pallet using pool's bonded account.
10199
10300
  **/
10200
10301
  nominate: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, validators: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, Vec<AccountId32>]>;
10201
10302
  /**
10202
- * Call `withdraw_unbonded` for the pools account. This call can be made by any account.
10303
+ * Withdraws unbonded funds from the pool's staking account.
10203
10304
  *
10204
- * This is useful if there are too many unlocking chunks to call `unbond`, and some
10205
- * can be cleared by withdrawing. In the case there are too many unlocking chunks, the user
10206
- * would probably see an error like `NoMoreChunks` emitted from the staking system when
10207
- * they attempt to unbond.
10305
+ * Useful for clearing unlocking chunks when there are too many to call `unbond`.
10306
+ * Prevents `NoMoreChunks` errors from the staking system.
10307
+ *
10308
+ * # Permissions
10309
+ *
10310
+ * * Can be signed by any account
10311
+ *
10312
+ * # Arguments
10313
+ *
10314
+ * * `origin` - Origin of the call
10315
+ * * `pool_id` - Pool identifier
10316
+ * * `num_slashing_spans` - Number of slashing spans to check
10317
+ *
10318
+ * # Errors
10319
+ *
10320
+ * * [`Error::PoolNotFound`] - Pool does not exist
10321
+ * * [`Error::NotDestroying`] - Pool is in destroying state
10208
10322
  **/
10209
10323
  poolWithdrawUnbonded: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, numSlashingSpans: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;
10210
10324
  /**
10211
- * Set the commission of a pool.
10212
- * Both a commission percentage and a commission payee must be provided in the `current`
10213
- * tuple. Where a `current` of `None` is provided, any current commission will be removed.
10325
+ * Set or remove the commission rate and payee for a pool.
10214
10326
  *
10215
- * - If a `None` is supplied to `new_commission`, existing commission will be removed.
10327
+ * # Permissions
10328
+ *
10329
+ * * Caller must have commission management permission for the pool
10330
+ *
10331
+ * # Arguments
10332
+ *
10333
+ * * `origin` - The origin of the call
10334
+ * * `pool_id` - The pool identifier
10335
+ * * `new_commission` - Optional commission rate and payee. None removes existing commission
10336
+ *
10337
+ * # Errors
10338
+ *
10339
+ * * [`Error::PoolNotFound`] - The pool_id does not exist
10340
+ * * [`Error::DoesNotHavePermission`] - Caller lacks commission management permission
10216
10341
  **/
10217
10342
  setCommission: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, newCommission: Option<ITuple<[Perbill, AccountId32]>> | null | Uint8Array | ITuple<[Perbill, AccountId32]> | [Perbill | AnyNumber | Uint8Array, AccountId32 | string | Uint8Array]) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[Perbill, AccountId32]>>]>;
10218
10343
  /**
@@ -10220,6 +10345,12 @@ declare module '@polkadot/api-base/types/submittable' {
10220
10345
  *
10221
10346
  * Initial change rate is not bounded, whereas subsequent updates can only be more
10222
10347
  * restrictive than the current.
10348
+ *
10349
+ * # Arguments
10350
+ *
10351
+ * * `origin` - The origin of the call. Must be signed by an account with commission management permission.
10352
+ * * `pool_id` - The identifier of the pool to set commission change rate for.
10353
+ * * `change_rate` - The new commission change rate configuration.
10223
10354
  **/
10224
10355
  setCommissionChangeRate: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, changeRate: PalletTangleLstCommissionCommissionChangeRate | {
10225
10356
  maxIncrease?: any;
@@ -10228,8 +10359,14 @@ declare module '@polkadot/api-base/types/submittable' {
10228
10359
  /**
10229
10360
  * Set or remove a pool's commission claim permission.
10230
10361
  *
10231
- * Determines who can claim the pool's pending commission. Only the `Root` role of the pool
10232
- * is able to conifigure commission claim permissions.
10362
+ * Only the `Root` role of the pool is able to configure commission claim permissions.
10363
+ * This determines which accounts are allowed to claim the pool's pending commission.
10364
+ *
10365
+ * # Arguments
10366
+ *
10367
+ * * `origin` - The origin of the call. Must be signed by the pool's root account.
10368
+ * * `pool_id` - The identifier of the pool to set permissions for.
10369
+ * * `permission` - Optional commission claim permission configuration. If None, removes any existing permission.
10233
10370
  **/
10234
10371
  setCommissionClaimPermission: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, permission: Option<PalletTangleLstCommissionCommissionClaimPermission> | null | Uint8Array | PalletTangleLstCommissionCommissionClaimPermission | {
10235
10372
  Permissionless: any;
@@ -10237,25 +10374,43 @@ declare module '@polkadot/api-base/types/submittable' {
10237
10374
  Account: any;
10238
10375
  } | string) => SubmittableExtrinsic<ApiType>, [u32, Option<PalletTangleLstCommissionCommissionClaimPermission>]>;
10239
10376
  /**
10240
- * Set the maximum commission of a pool.
10377
+ * Set the maximum commission rate for a pool. Initial max can be set to any value, with only
10378
+ * lower values allowed thereafter. Current commission will be reduced if above new max.
10241
10379
  *
10242
- * - Initial max can be set to any `Perbill`, and only smaller values thereafter.
10243
- * - Current commission will be lowered in the event it is higher than a new max
10244
- * commission.
10380
+ * # Permissions
10381
+ *
10382
+ * * Caller must have commission management permission for the pool
10383
+ *
10384
+ * # Arguments
10385
+ *
10386
+ * * `origin` - The origin of the call
10387
+ * * `pool_id` - The pool identifier
10388
+ * * `max_commission` - The new maximum commission rate
10389
+ *
10390
+ * # Errors
10391
+ *
10392
+ * * [`Error::PoolNotFound`] - The pool_id does not exist
10393
+ * * [`Error::DoesNotHavePermission`] - Caller lacks commission management permission
10245
10394
  **/
10246
10395
  setCommissionMax: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, maxCommission: Perbill | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Perbill]>;
10247
10396
  /**
10248
- * Update configurations for the nomination pools. The origin for this call must be
10249
- * Root.
10397
+ * Updates the global configuration parameters for nomination pools.
10398
+ *
10399
+ * # Permissions
10400
+ *
10401
+ * * Must be called by Root
10250
10402
  *
10251
10403
  * # Arguments
10252
10404
  *
10253
- * * `min_join_bond` - Set [`MinJoinBond`].
10254
- * * `min_create_bond` - Set [`MinCreateBond`].
10255
- * * `max_pools` - Set [`MaxPools`].
10256
- * * `max_members` - Set [`MaxPoolMembers`].
10257
- * * `max_members_per_pool` - Set [`MaxPoolMembersPerPool`].
10258
- * * `global_max_commission` - Set [`GlobalMaxCommission`].
10405
+ * * `origin` - Origin of the call
10406
+ * * `min_join_bond` - Config operation for minimum bond to join a pool
10407
+ * * `min_create_bond` - Config operation for minimum bond to create a pool
10408
+ * * `max_pools` - Config operation for maximum number of pools
10409
+ * * `global_max_commission` - Config operation for maximum global commission
10410
+ *
10411
+ * # Errors
10412
+ *
10413
+ * * [`DispatchError::BadOrigin`] - Caller is not Root
10259
10414
  **/
10260
10415
  setConfigs: AugmentedSubmittable<(minJoinBond: PalletTangleLstConfigOpU128 | {
10261
10416
  Noop: any;
@@ -10283,57 +10438,81 @@ declare module '@polkadot/api-base/types/submittable' {
10283
10438
  Remove: any;
10284
10439
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletTangleLstConfigOpU128, PalletTangleLstConfigOpU128, PalletTangleLstConfigOpU32, PalletTangleLstConfigOpPerbill]>;
10285
10440
  /**
10286
- * Set a new metadata for the pool.
10441
+ * Updates the metadata for a given pool.
10287
10442
  *
10288
- * The dispatch origin of this call must be signed by the bouncer, or the root role of the
10289
- * pool.
10443
+ * # Permissions
10444
+ *
10445
+ * * Must be called by the pool bouncer or root role
10446
+ *
10447
+ * # Arguments
10448
+ *
10449
+ * * `origin` - Origin of the call
10450
+ * * `pool_id` - Pool identifier
10451
+ * * `metadata` - New metadata to set
10452
+ *
10453
+ * # Errors
10454
+ *
10455
+ * * [`Error::PoolNotFound`] - Pool does not exist
10456
+ * * [`Error::MetadataExceedsMaxLen`] - Metadata length exceeds maximum allowed
10457
+ * * [`Error::DoesNotHavePermission`] - Caller lacks required permissions
10290
10458
  **/
10291
10459
  setMetadata: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, metadata: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Bytes]>;
10292
10460
  /**
10293
- * Set a new state for the pool.
10461
+ * Updates the state of a pool. Once a pool is in `Destroying` state, its state cannot be
10462
+ * changed again under any circumstances.
10294
10463
  *
10295
- * If a pool is already in the `Destroying` state, then under no condition can its state
10296
- * change again.
10464
+ * # Permissions
10297
10465
  *
10298
- * The dispatch origin of this call must be either:
10466
+ * * Pool bouncer or root role can set any state
10467
+ * * Any account can set state to `Destroying` if pool fails `ok_to_be_open` conditions
10299
10468
  *
10300
- * 1. signed by the bouncer, or the root role of the pool,
10301
- * 2. if the pool conditions to be open are NOT met (as described by `ok_to_be_open`), and
10302
- * then the state of the pool can be permissionlessly changed to `Destroying`.
10469
+ * # Arguments
10470
+ *
10471
+ * * `origin` - Origin of the call
10472
+ * * `pool_id` - Pool identifier
10473
+ * * `state` - New state to set
10474
+ *
10475
+ * # Errors
10476
+ *
10477
+ * * [`Error::PoolNotFound`] - Pool does not exist
10478
+ * * [`Error::CanNotChangeState`] - Pool is in destroying state or caller lacks permissions
10479
+ *
10480
+ * # Note
10481
+ *
10482
+ * State changes are validated through `ok_to_be_open` which checks pool properties like
10483
+ * commission, member count and roles.
10303
10484
  **/
10304
10485
  setState: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, state: PalletTangleLstPoolsPoolState | 'Open' | 'Blocked' | 'Destroying' | number | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletTangleLstPoolsPoolState]>;
10305
10486
  /**
10306
- * Unbond up to `unbonding_points` of the `member_account`'s funds from the pool. It
10307
- * implicitly collects the rewards one last time, since not doing so would mean some
10308
- * rewards would be forfeited.
10487
+ * Unbond points from a member's pool position, collecting any pending rewards.
10309
10488
  *
10310
- * Under certain conditions, this call can be dispatched permissionlessly (i.e. by any
10311
- * account).
10489
+ * # Arguments
10312
10490
  *
10313
- * # Conditions for a permissionless dispatch.
10491
+ * * `origin` - Origin of the call
10492
+ * * `member_account` - Account to unbond from
10493
+ * * `pool_id` - Target pool ID
10494
+ * * `unbonding_points` - Amount of points to unbond
10314
10495
  *
10315
- * * The pool is blocked and the caller is either the root or bouncer. This is refereed to
10316
- * as a kick.
10317
- * * The pool is destroying and the member is not the depositor.
10318
- * * The pool is destroying, the member is the depositor and no other members are in the
10319
- * pool.
10496
+ * # Permissions
10320
10497
  *
10321
- * ## Conditions for permissioned dispatch (i.e. the caller is also the
10322
- * `member_account`):
10498
+ * * Permissionless if:
10499
+ * - Pool is blocked and caller is root/bouncer (kick)
10500
+ * - Pool is destroying and member is not depositor
10501
+ * - Pool is destroying, member is depositor, and pool is empty
10502
+ * * Permissioned (caller must be member) if:
10503
+ * - Caller is not depositor
10504
+ * - Caller is depositor, pool is destroying, and pool is empty
10323
10505
  *
10324
- * * The caller is not the depositor.
10325
- * * The caller is the depositor, the pool is destroying and no other members are in the
10326
- * pool.
10506
+ * # Errors
10327
10507
  *
10328
- * # Note
10508
+ * * [`Error::PoolNotFound`] - Pool does not exist
10509
+ * * [`Error::NoBalanceToUnbond`] - Member has insufficient points
10510
+ * * [`Error::DefensiveError`] - Not enough space in unbond pool
10329
10511
  *
10330
- * If there are too many unlocking chunks to unbond with the pool account,
10331
- * [`Call::pool_withdraw_unbonded`] can be called to try and minimize unlocking chunks.
10332
- * The [`StakingInterface::unbond`] will implicitly call [`Call::pool_withdraw_unbonded`]
10333
- * to try to free chunks if necessary (ie. if unbound was called and no unlocking chunks
10334
- * are available). However, it may not be possible to release the current unlocking chunks,
10335
- * in which case, the result of this call will likely be the `NoMoreChunks` error from the
10336
- * staking system.
10512
+ * # Note
10513
+ * If no unlocking chunks are available, [`Call::pool_withdraw_unbonded`] can be called first.
10514
+ * The staking interface will attempt this automatically but may still return `NoMoreChunks`
10515
+ * if chunks cannot be released.
10337
10516
  **/
10338
10517
  unbond: AugmentedSubmittable<(memberAccount: MultiAddress | {
10339
10518
  Id: any;
@@ -10347,13 +10526,27 @@ declare module '@polkadot/api-base/types/submittable' {
10347
10526
  Address20: any;
10348
10527
  } | string | Uint8Array, poolId: u32 | AnyNumber | Uint8Array, unbondingPoints: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, u32, Compact<u128>]>;
10349
10528
  /**
10350
- * Update the roles of the pool.
10529
+ * Update the roles of a pool.
10351
10530
  *
10352
- * The root is the only entity that can change any of the roles, including itself,
10353
- * excluding the depositor, who can never change.
10531
+ * Updates root, nominator and bouncer roles for a given pool. The depositor role cannot be changed.
10532
+ * Emits a `RolesUpdated` event on successful update.
10354
10533
  *
10355
- * It emits an event, notifying UIs of the role change. This event is quite relevant to
10356
- * most pool members and they should be informed of changes to pool roles.
10534
+ * # Permissions
10535
+ *
10536
+ * * Origin must be Root or pool root
10537
+ *
10538
+ * # Arguments
10539
+ *
10540
+ * * `origin` - Origin of the call
10541
+ * * `pool_id` - Pool identifier
10542
+ * * `new_root` - New root role configuration
10543
+ * * `new_nominator` - New nominator role configuration
10544
+ * * `new_bouncer` - New bouncer role configuration
10545
+ *
10546
+ * # Errors
10547
+ *
10548
+ * * [`Error::PoolNotFound`] - Pool does not exist
10549
+ * * [`Error::DoesNotHavePermission`] - Origin does not have permission
10357
10550
  **/
10358
10551
  updateRoles: AugmentedSubmittable<(poolId: u32 | AnyNumber | Uint8Array, newRoot: PalletTangleLstConfigOpAccountId32 | {
10359
10552
  Noop: any;
@@ -10375,25 +10568,31 @@ declare module '@polkadot/api-base/types/submittable' {
10375
10568
  Remove: any;
10376
10569
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletTangleLstConfigOpAccountId32, PalletTangleLstConfigOpAccountId32, PalletTangleLstConfigOpAccountId32]>;
10377
10570
  /**
10378
- * Withdraw unbonded funds from `member_account`. If no bonded funds can be unbonded, an
10379
- * error is returned.
10571
+ * Withdraw unbonded funds from a member account.
10380
10572
  *
10381
- * Under certain conditions, this call can be dispatched permissionlessly (i.e. by any
10382
- * account).
10573
+ * # Permissions
10383
10574
  *
10384
- * # Conditions for a permissionless dispatch
10575
+ * * Permissionless if:
10576
+ * - Pool is in destroy mode and target is not depositor
10577
+ * - Target is depositor and only member in sub pools
10578
+ * - Pool is blocked and caller is root/bouncer
10579
+ * * Permissioned if caller is target and not depositor
10385
10580
  *
10386
- * * The pool is in destroy mode and the target is not the depositor.
10387
- * * The target is the depositor and they are the only member in the sub pools.
10388
- * * The pool is blocked and the caller is either the root or bouncer.
10581
+ * # Arguments
10389
10582
  *
10390
- * # Conditions for permissioned dispatch
10583
+ * * `origin` - Origin of the call
10584
+ * * `member_account` - Account to withdraw from
10585
+ * * `pool_id` - Pool identifier
10586
+ * * `num_slashing_spans` - Number of slashing spans
10391
10587
  *
10392
- * * The caller is the target and they are not the depositor.
10588
+ * # Errors
10393
10589
  *
10394
- * # Note
10590
+ * * [`Error::PoolMemberNotFound`] - Member account not found
10591
+ * * [`Error::PoolNotFound`] - Pool does not exist
10592
+ * * [`Error::SubPoolsNotFound`] - Sub pools not found
10593
+ * * [`Error::CannotWithdrawAny`] - No unbonded funds available
10395
10594
  *
10396
- * If the target is the depositor, the pool will be destroyed.
10595
+ * If target is depositor, pool will be destroyed.
10397
10596
  **/
10398
10597
  withdrawUnbonded: AugmentedSubmittable<(memberAccount: MultiAddress | {
10399
10598
  Id: any;
@@ -10414,10 +10613,42 @@ declare module '@polkadot/api-base/types/submittable' {
10414
10613
  multiAssetDelegation: {
10415
10614
  /**
10416
10615
  * Adds a blueprint ID to a delegator's selection.
10616
+ *
10617
+ * # Permissions
10618
+ *
10619
+ * * Must be signed by the delegator account
10620
+ *
10621
+ * # Arguments
10622
+ *
10623
+ * * `origin` - Origin of the call
10624
+ * * `blueprint_id` - ID of blueprint to add
10625
+ *
10626
+ * # Errors
10627
+ *
10628
+ * * [`Error::NotDelegator`] - Account is not a delegator
10629
+ * * [`Error::DuplicateBlueprintId`] - Blueprint ID already exists
10630
+ * * [`Error::MaxBlueprintsExceeded`] - Would exceed max blueprints
10631
+ * * [`Error::NotInFixedMode`] - Not in fixed blueprint selection mode
10417
10632
  **/
10418
10633
  addBlueprintId: AugmentedSubmittable<(blueprintId: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;
10419
10634
  /**
10420
10635
  * Cancels a scheduled request to reduce a delegator's stake.
10636
+ *
10637
+ * # Permissions
10638
+ *
10639
+ * * Must be signed by the delegator account
10640
+ *
10641
+ * # Arguments
10642
+ *
10643
+ * * `origin` - Origin of the call
10644
+ * * `operator` - Operator to cancel unstake from
10645
+ * * `asset_id` - ID of asset unstake to cancel
10646
+ * * `amount` - Amount of unstake to cancel
10647
+ *
10648
+ * # Errors
10649
+ *
10650
+ * * [`Error::NotDelegator`] - Account is not a delegator
10651
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10421
10652
  **/
10422
10653
  cancelDelegatorUnstake: AugmentedSubmittable<(operator: AccountId32 | string | Uint8Array, assetId: TanglePrimitivesServicesAsset | {
10423
10654
  Custom: any;
@@ -10426,14 +10657,54 @@ declare module '@polkadot/api-base/types/submittable' {
10426
10657
  } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, TanglePrimitivesServicesAsset, u128]>;
10427
10658
  /**
10428
10659
  * Cancels a scheduled leave for an operator.
10660
+ *
10661
+ * # Permissions
10662
+ *
10663
+ * * Must be signed by the operator account
10664
+ *
10665
+ * # Arguments
10666
+ *
10667
+ * * `origin` - Origin of the call
10668
+ *
10669
+ * # Errors
10670
+ *
10671
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10672
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10429
10673
  **/
10430
10674
  cancelLeaveOperators: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10431
10675
  /**
10432
10676
  * Cancels a scheduled stake decrease for an operator.
10677
+ *
10678
+ * # Permissions
10679
+ *
10680
+ * * Must be signed by the operator account
10681
+ *
10682
+ * # Arguments
10683
+ *
10684
+ * * `origin` - Origin of the call
10685
+ *
10686
+ * # Errors
10687
+ *
10688
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10689
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10433
10690
  **/
10434
10691
  cancelOperatorUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10435
10692
  /**
10436
10693
  * Cancels a scheduled withdraw request.
10694
+ *
10695
+ * # Permissions
10696
+ *
10697
+ * * Must be signed by the withdrawer account
10698
+ *
10699
+ * # Arguments
10700
+ *
10701
+ * * `origin` - Origin of the call
10702
+ * * `asset_id` - ID of the asset withdrawal to cancel
10703
+ * * `amount` - Amount of the withdrawal to cancel
10704
+ *
10705
+ * # Errors
10706
+ *
10707
+ * * [`Error::NoWithdrawRequestExists`] - No pending withdraw request exists
10437
10708
  **/
10438
10709
  cancelWithdraw: AugmentedSubmittable<(assetId: TanglePrimitivesServicesAsset | {
10439
10710
  Custom: any;
@@ -10442,6 +10713,24 @@ declare module '@polkadot/api-base/types/submittable' {
10442
10713
  } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [TanglePrimitivesServicesAsset, u128]>;
10443
10714
  /**
10444
10715
  * Allows a user to delegate an amount of an asset to an operator.
10716
+ *
10717
+ * # Permissions
10718
+ *
10719
+ * * Must be signed by the delegator account
10720
+ *
10721
+ * # Arguments
10722
+ *
10723
+ * * `origin` - Origin of the call
10724
+ * * `operator` - Operator to delegate to
10725
+ * * `asset_id` - ID of asset to delegate
10726
+ * * `amount` - Amount to delegate
10727
+ * * `blueprint_selection` - Blueprint selection strategy
10728
+ *
10729
+ * # Errors
10730
+ *
10731
+ * * [`Error::NotOperator`] - Target account is not an operator
10732
+ * * [`Error::InsufficientBalance`] - Insufficient balance to delegate
10733
+ * * [`Error::MaxDelegationsExceeded`] - Would exceed max delegations
10445
10734
  **/
10446
10735
  delegate: AugmentedSubmittable<(operator: AccountId32 | string | Uint8Array, assetId: TanglePrimitivesServicesAsset | {
10447
10736
  Custom: any;
@@ -10454,6 +10743,22 @@ declare module '@polkadot/api-base/types/submittable' {
10454
10743
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, TanglePrimitivesServicesAsset, u128, PalletMultiAssetDelegationDelegatorDelegatorBlueprintSelection]>;
10455
10744
  /**
10456
10745
  * Allows a user to deposit an asset.
10746
+ *
10747
+ * # Permissions
10748
+ *
10749
+ * * Must be signed by the depositor account
10750
+ *
10751
+ * # Arguments
10752
+ *
10753
+ * * `origin` - Origin of the call
10754
+ * * `asset_id` - ID of the asset to deposit
10755
+ * * `amount` - Amount to deposit
10756
+ * * `evm_address` - Optional EVM address
10757
+ *
10758
+ * # Errors
10759
+ *
10760
+ * * [`Error::DepositOverflow`] - Deposit would overflow tracking
10761
+ * * [`Error::InvalidAsset`] - Asset is not supported
10457
10762
  **/
10458
10763
  deposit: AugmentedSubmittable<(assetId: TanglePrimitivesServicesAsset | {
10459
10764
  Custom: any;
@@ -10462,34 +10767,146 @@ declare module '@polkadot/api-base/types/submittable' {
10462
10767
  } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array, evmAddress: Option<H160> | null | Uint8Array | H160 | string) => SubmittableExtrinsic<ApiType>, [TanglePrimitivesServicesAsset, u128, Option<H160>]>;
10463
10768
  /**
10464
10769
  * Executes a scheduled request to reduce a delegator's stake.
10770
+ *
10771
+ * # Permissions
10772
+ *
10773
+ * * Must be signed by the delegator account
10774
+ *
10775
+ * # Arguments
10776
+ *
10777
+ * * `origin` - Origin of the call
10778
+ *
10779
+ * # Errors
10780
+ *
10781
+ * * [`Error::NotDelegator`] - Account is not a delegator
10782
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10783
+ * * [`Error::UnstakePeriodNotElapsed`] - Unstake period has not elapsed
10465
10784
  **/
10466
10785
  executeDelegatorUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10467
10786
  /**
10468
10787
  * Executes a scheduled leave for an operator.
10788
+ *
10789
+ * # Permissions
10790
+ *
10791
+ * * Must be signed by the operator account
10792
+ *
10793
+ * # Arguments
10794
+ *
10795
+ * * `origin` - Origin of the call
10796
+ *
10797
+ * # Errors
10798
+ *
10799
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10800
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10801
+ * * [`Error::UnstakePeriodNotElapsed`] - Unstake period has not elapsed yet
10469
10802
  **/
10470
10803
  executeLeaveOperators: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10471
10804
  /**
10472
10805
  * Executes a scheduled stake decrease for an operator.
10806
+ *
10807
+ * # Permissions
10808
+ *
10809
+ * * Must be signed by the operator account
10810
+ *
10811
+ * # Arguments
10812
+ *
10813
+ * * `origin` - Origin of the call
10814
+ *
10815
+ * # Errors
10816
+ *
10817
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10818
+ * * [`Error::NoUnstakeRequestExists`] - No pending unstake request exists
10819
+ * * [`Error::UnstakePeriodNotElapsed`] - Unstake period has not elapsed yet
10473
10820
  **/
10474
10821
  executeOperatorUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10475
10822
  /**
10476
10823
  * Executes a scheduled withdraw request.
10824
+ *
10825
+ * # Permissions
10826
+ *
10827
+ * * Must be signed by the withdrawer account
10828
+ *
10829
+ * # Arguments
10830
+ *
10831
+ * * `origin` - Origin of the call
10832
+ * * `evm_address` - Optional EVM address
10833
+ *
10834
+ * # Errors
10835
+ *
10836
+ * * [`Error::NoWithdrawRequestExists`] - No pending withdraw request exists
10837
+ * * [`Error::WithdrawPeriodNotElapsed`] - Withdraw period has not elapsed
10477
10838
  **/
10478
10839
  executeWithdraw: AugmentedSubmittable<(evmAddress: Option<H160> | null | Uint8Array | H160 | string) => SubmittableExtrinsic<ApiType>, [Option<H160>]>;
10479
10840
  /**
10480
10841
  * Allows an operator to go offline.
10842
+ *
10843
+ * # Permissions
10844
+ *
10845
+ * * Must be signed by the operator account
10846
+ *
10847
+ * # Arguments
10848
+ *
10849
+ * * `origin` - Origin of the call
10850
+ *
10851
+ * # Errors
10852
+ *
10853
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10854
+ * * [`Error::AlreadyOffline`] - Operator is already offline
10481
10855
  **/
10482
10856
  goOffline: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10483
10857
  /**
10484
10858
  * Allows an operator to go online.
10859
+ *
10860
+ * # Permissions
10861
+ *
10862
+ * * Must be signed by the operator account
10863
+ *
10864
+ * # Arguments
10865
+ *
10866
+ * * `origin` - Origin of the call
10867
+ *
10868
+ * # Errors
10869
+ *
10870
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10871
+ * * [`Error::AlreadyOnline`] - Operator is already online
10485
10872
  **/
10486
10873
  goOnline: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10487
10874
  /**
10488
- * Allows an account to join as an operator by providing a stake.
10875
+ * Allows an account to join as an operator by staking the required bond amount.
10876
+ *
10877
+ * # Permissions
10878
+ *
10879
+ * * Must be signed by the account joining as operator
10880
+ *
10881
+ * # Arguments
10882
+ *
10883
+ * * `origin` - Origin of the call
10884
+ * * `bond_amount` - Amount to stake as operator bond
10885
+ *
10886
+ * # Errors
10887
+ *
10888
+ * * [`Error::DepositOverflow`] - Bond amount would overflow deposit tracking
10889
+ * * [`Error::StakeOverflow`] - Bond amount would overflow stake tracking
10489
10890
  **/
10490
10891
  joinOperators: AugmentedSubmittable<(bondAmount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;
10491
10892
  /**
10492
- * Manage asset id to vault rewards
10893
+ * Manage asset id to vault rewards.
10894
+ *
10895
+ * # Permissions
10896
+ *
10897
+ * * Must be signed by an authorized account
10898
+ *
10899
+ * # Arguments
10900
+ *
10901
+ * * `origin` - Origin of the call
10902
+ * * `vault_id` - ID of the vault
10903
+ * * `asset_id` - ID of the asset
10904
+ * * `action` - Action to perform (Add/Remove)
10905
+ *
10906
+ * # Errors
10907
+ *
10908
+ * * [`Error::AssetAlreadyInVault`] - Asset already exists in vault
10909
+ * * [`Error::AssetNotInVault`] - Asset does not exist in vault
10493
10910
  **/
10494
10911
  manageAssetInVault: AugmentedSubmittable<(vaultId: u128 | AnyNumber | Uint8Array, assetId: TanglePrimitivesServicesAsset | {
10495
10912
  Custom: any;
@@ -10498,14 +10915,60 @@ declare module '@polkadot/api-base/types/submittable' {
10498
10915
  } | string | Uint8Array, action: PalletMultiAssetDelegationRewardsAssetAction | 'Add' | 'Remove' | number | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128, TanglePrimitivesServicesAsset, PalletMultiAssetDelegationRewardsAssetAction]>;
10499
10916
  /**
10500
10917
  * Allows an operator to increase their stake.
10918
+ *
10919
+ * # Permissions
10920
+ *
10921
+ * * Must be signed by the operator account
10922
+ *
10923
+ * # Arguments
10924
+ *
10925
+ * * `origin` - Origin of the call
10926
+ * * `additional_bond` - Additional amount to stake
10927
+ *
10928
+ * # Errors
10929
+ *
10930
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10931
+ * * [`Error::StakeOverflow`] - Additional bond would overflow stake tracking
10501
10932
  **/
10502
10933
  operatorBondMore: AugmentedSubmittable<(additionalBond: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;
10503
10934
  /**
10504
10935
  * Removes a blueprint ID from a delegator's selection.
10936
+ *
10937
+ * # Permissions
10938
+ *
10939
+ * * Must be signed by the delegator account
10940
+ *
10941
+ * # Arguments
10942
+ *
10943
+ * * `origin` - Origin of the call
10944
+ * * `blueprint_id` - ID of blueprint to remove
10945
+ *
10946
+ * # Errors
10947
+ *
10948
+ * * [`Error::NotDelegator`] - Account is not a delegator
10949
+ * * [`Error::BlueprintIdNotFound`] - Blueprint ID not found
10950
+ * * [`Error::NotInFixedMode`] - Not in fixed blueprint selection mode
10505
10951
  **/
10506
10952
  removeBlueprintId: AugmentedSubmittable<(blueprintId: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;
10507
10953
  /**
10508
10954
  * Schedules a request to reduce a delegator's stake.
10955
+ *
10956
+ * # Permissions
10957
+ *
10958
+ * * Must be signed by the delegator account
10959
+ *
10960
+ * # Arguments
10961
+ *
10962
+ * * `origin` - Origin of the call
10963
+ * * `operator` - Operator to unstake from
10964
+ * * `asset_id` - ID of asset to unstake
10965
+ * * `amount` - Amount to unstake
10966
+ *
10967
+ * # Errors
10968
+ *
10969
+ * * [`Error::NotDelegator`] - Account is not a delegator
10970
+ * * [`Error::InsufficientDelegation`] - Insufficient delegation to unstake
10971
+ * * [`Error::PendingUnstakeRequestExists`] - Pending unstake request exists
10509
10972
  **/
10510
10973
  scheduleDelegatorUnstake: AugmentedSubmittable<(operator: AccountId32 | string | Uint8Array, assetId: TanglePrimitivesServicesAsset | {
10511
10974
  Custom: any;
@@ -10513,15 +10976,58 @@ declare module '@polkadot/api-base/types/submittable' {
10513
10976
  Erc20: any;
10514
10977
  } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, TanglePrimitivesServicesAsset, u128]>;
10515
10978
  /**
10516
- * Schedules an operator to leave.
10979
+ * Schedules an operator to leave the system.
10980
+ *
10981
+ * # Permissions
10982
+ *
10983
+ * * Must be signed by the operator account
10984
+ *
10985
+ * # Arguments
10986
+ *
10987
+ * * `origin` - Origin of the call
10988
+ *
10989
+ * # Errors
10990
+ *
10991
+ * * [`Error::NotOperator`] - Account is not registered as an operator
10992
+ * * [`Error::PendingUnstakeRequestExists`] - Operator already has a pending unstake request
10517
10993
  **/
10518
10994
  scheduleLeaveOperators: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
10519
10995
  /**
10520
10996
  * Schedules an operator to decrease their stake.
10997
+ *
10998
+ * # Permissions
10999
+ *
11000
+ * * Must be signed by the operator account
11001
+ *
11002
+ * # Arguments
11003
+ *
11004
+ * * `origin` - Origin of the call
11005
+ * * `unstake_amount` - Amount to unstake
11006
+ *
11007
+ * # Errors
11008
+ *
11009
+ * * [`Error::NotOperator`] - Account is not registered as an operator
11010
+ * * [`Error::PendingUnstakeRequestExists`] - Operator already has a pending unstake request
11011
+ * * [`Error::InsufficientBalance`] - Operator has insufficient stake to unstake
10521
11012
  **/
10522
11013
  scheduleOperatorUnstake: AugmentedSubmittable<(unstakeAmount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128]>;
10523
11014
  /**
10524
- * Schedules an withdraw request.
11015
+ * Schedules a withdraw request.
11016
+ *
11017
+ * # Permissions
11018
+ *
11019
+ * * Must be signed by the withdrawer account
11020
+ *
11021
+ * # Arguments
11022
+ *
11023
+ * * `origin` - Origin of the call
11024
+ * * `asset_id` - ID of the asset to withdraw
11025
+ * * `amount` - Amount to withdraw
11026
+ *
11027
+ * # Errors
11028
+ *
11029
+ * * [`Error::InsufficientBalance`] - Insufficient balance to withdraw
11030
+ * * [`Error::PendingWithdrawRequestExists`] - Pending withdraw request exists
10525
11031
  **/
10526
11032
  scheduleWithdraw: AugmentedSubmittable<(assetId: TanglePrimitivesServicesAsset | {
10527
11033
  Custom: any;
@@ -10530,15 +11036,35 @@ declare module '@polkadot/api-base/types/submittable' {
10530
11036
  } | string | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [TanglePrimitivesServicesAsset, u128]>;
10531
11037
  /**
10532
11038
  * Sets the APY and cap for a specific asset.
10533
- * The APY is the annual percentage yield that the asset will earn.
10534
- * The cap is the amount of assets required to be deposited to distribute the entire APY.
10535
- * The APY is capped at 10% and will require runtime upgrade to change.
10536
11039
  *
10537
- * While the cap is not met, the APY distributed will be `amount_deposited / cap * APY`.
11040
+ * # Permissions
11041
+ *
11042
+ * * Must be called by the force origin
11043
+ *
11044
+ * # Arguments
11045
+ *
11046
+ * * `origin` - Origin of the call
11047
+ * * `vault_id` - ID of the vault
11048
+ * * `apy` - Annual percentage yield (max 10%)
11049
+ * * `cap` - Required deposit amount for full APY
11050
+ *
11051
+ * # Errors
11052
+ *
11053
+ * * [`Error::APYExceedsMaximum`] - APY exceeds 10% maximum
11054
+ * * [`Error::CapCannotBeZero`] - Cap amount cannot be zero
10538
11055
  **/
10539
11056
  setIncentiveApyAndCap: AugmentedSubmittable<(vaultId: u128 | AnyNumber | Uint8Array, apy: Percent | AnyNumber | Uint8Array, cap: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u128, Percent, u128]>;
10540
11057
  /**
10541
11058
  * Whitelists a blueprint for rewards.
11059
+ *
11060
+ * # Permissions
11061
+ *
11062
+ * * Must be called by the force origin
11063
+ *
11064
+ * # Arguments
11065
+ *
11066
+ * * `origin` - Origin of the call
11067
+ * * `blueprint_id` - ID of blueprint to whitelist
10542
11068
  **/
10543
11069
  whitelistBlueprintForRewards: AugmentedSubmittable<(blueprintId: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u64]>;
10544
11070
  /**
@@ -11536,15 +12062,47 @@ declare module '@polkadot/api-base/types/submittable' {
11536
12062
  };
11537
12063
  services: {
11538
12064
  /**
11539
- * Approve a service request, so that the service can be initiated.
12065
+ * Approve a service request, allowing it to be initiated once all required approvals are received.
12066
+ *
12067
+ * # Permissions
12068
+ *
12069
+ * * Caller must be a registered operator for the service blueprint
12070
+ * * Caller must be in the pending approvals list for this request
12071
+ *
12072
+ * # Arguments
12073
+ *
12074
+ * * `origin` - The origin of the call, must be a signed account
12075
+ * * `request_id` - The ID of the service request to approve
12076
+ * * `restaking_percent` - Percentage of staked tokens to expose to this service (0-100)
12077
+ *
12078
+ * # Errors
11540
12079
  *
11541
- * The `restaking_percent` is the percentage of the restaked tokens that will be exposed to
11542
- * the service.
12080
+ * * [`Error::ApprovalNotRequested`] - Caller is not in the pending approvals list
12081
+ * * [`Error::ApprovalInterrupted`] - Approval was rejected by blueprint hook
11543
12082
  **/
11544
12083
  approve: AugmentedSubmittable<(requestId: Compact<u64> | AnyNumber | Uint8Array, restakingPercent: Compact<Percent> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>, Compact<Percent>]>;
11545
12084
  /**
11546
- * Call a Job in the service.
11547
- * The caller needs to be the owner of the service, or a permitted caller.
12085
+ * Call a job in the service with the provided arguments.
12086
+ *
12087
+ * # Permissions
12088
+ *
12089
+ * * Must be signed by the service owner or a permitted caller
12090
+ *
12091
+ * # Arguments
12092
+ *
12093
+ * * `origin` - The origin of the call
12094
+ * * `service_id` - The service identifier
12095
+ * * `job` - The job index to call
12096
+ * * `args` - The arguments to pass to the job
12097
+ *
12098
+ * # Errors
12099
+ *
12100
+ * * [`Error::ServiceNotFound`] - The service_id does not exist
12101
+ * * [`Error::JobDefinitionNotFound`] - The job index is invalid
12102
+ * * [`Error::MaxFieldsExceeded`] - Too many arguments provided
12103
+ * * [`Error::TypeCheck`] - Arguments fail type checking
12104
+ * * [`Error::InvalidJobCallInput`] - Job call was rejected by hooks
12105
+ * * [`DispatchError::BadOrigin`] - Caller is not owner or permitted caller
11548
12106
  **/
11549
12107
  call: AugmentedSubmittable<(serviceId: Compact<u64> | AnyNumber | Uint8Array, job: Compact<u8> | AnyNumber | Uint8Array, args: Vec<TanglePrimitivesServicesField> | (TanglePrimitivesServicesField | {
11550
12108
  None: any;
@@ -11582,12 +12140,32 @@ declare module '@polkadot/api-base/types/submittable' {
11582
12140
  /**
11583
12141
  * Create a new service blueprint.
11584
12142
  *
11585
- * A Service Blueprint is a template for a service that can be instantiated later on by a
11586
- * user.
12143
+ * A Service Blueprint is a template for a service that can be instantiated by users. The blueprint
12144
+ * defines the service's constraints, requirements and behavior, including the master blueprint service
12145
+ * manager revision to use.
11587
12146
  *
11588
- * # Parameters
11589
- * - `origin`: The account that is creating the service blueprint.
11590
- * - `blueprint`: The blueprint of the service.
12147
+ * # Permissions
12148
+ *
12149
+ * * The origin must be signed by the account that will own the blueprint
12150
+ *
12151
+ * # Arguments
12152
+ *
12153
+ * * `origin` - The origin of the call, must be signed by the account creating the blueprint
12154
+ * * `blueprint` - The service blueprint containing:
12155
+ * - Service constraints and requirements
12156
+ * - Master blueprint service manager revision (Latest or Specific)
12157
+ * - Template configuration for service instantiation
12158
+ *
12159
+ * # Errors
12160
+ *
12161
+ * * [`Error::BadOrigin`] - Origin is not signed
12162
+ * * [`Error::MasterBlueprintServiceManagerRevisionNotFound`] - Specified MBSM revision does not exist
12163
+ * * [`Error::BlueprintCreationInterrupted`] - Blueprint creation is interrupted by hooks
12164
+ *
12165
+ * # Returns
12166
+ *
12167
+ * Returns a `DispatchResultWithPostInfo` which on success emits a [`Event::BlueprintCreated`] event
12168
+ * containing the owner and blueprint ID.
11591
12169
  **/
11592
12170
  createBlueprint: AugmentedSubmittable<(blueprint: TanglePrimitivesServicesServiceBlueprint | {
11593
12171
  metadata?: any;
@@ -11599,29 +12177,88 @@ declare module '@polkadot/api-base/types/submittable' {
11599
12177
  gadget?: any;
11600
12178
  } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [TanglePrimitivesServicesServiceBlueprint]>;
11601
12179
  /**
11602
- * Dispute an [UnappliedSlash] for a given era and index.
12180
+ * Disputes and removes an [UnappliedSlash] from storage.
12181
+ *
12182
+ * The slash will not be applied once disputed and is permanently removed.
12183
+ *
12184
+ * # Permissions
12185
+ *
12186
+ * * Caller must be the authorized dispute origin for the service
12187
+ *
12188
+ * # Arguments
12189
+ *
12190
+ * * `origin` - Origin of the call
12191
+ * * `era` - Era containing the slash to dispute
12192
+ * * `index` - Index of the slash within the era
12193
+ *
12194
+ * # Errors
12195
+ *
12196
+ * * [Error::NoDisputeOrigin] - Service has no dispute origin configured
12197
+ * * [DispatchError::BadOrigin] - Caller is not the authorized dispute origin
11603
12198
  *
11604
- * The caller needs to be an authorized Dispute Origin for the service in the
11605
- * [UnappliedSlash].
11606
12199
  **/
11607
12200
  dispute: AugmentedSubmittable<(era: Compact<u32> | AnyNumber | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Compact<u32>]>;
11608
12201
  /**
11609
12202
  * Pre-register the caller as an operator for a specific blueprint.
11610
12203
  *
11611
- * The caller can pre-register for a blueprint, which will emit a `PreRegistration` event.
11612
- * This event can be listened to by the operator node to execute the custom blueprint's
11613
- * registration function.
12204
+ * This function allows an account to signal intent to become an operator for a blueprint by emitting
12205
+ * a `PreRegistration` event. The operator node can listen for this event to execute any custom
12206
+ * registration logic defined in the blueprint.
12207
+ *
12208
+ * Pre-registration is the first step in the operator registration flow. After pre-registering,
12209
+ * operators must complete the full registration process by calling `register()` with their preferences
12210
+ * and registration arguments.
12211
+ *
12212
+ * # Arguments
12213
+ *
12214
+ * * `origin: OriginFor<T>` - The origin of the call. Must be signed by the account that wants to
12215
+ * become an operator.
12216
+ * * `blueprint_id: u64` - The identifier of the service blueprint to pre-register for. Must refer
12217
+ * to an existing blueprint.
12218
+ *
12219
+ * # Permissions
12220
+ *
12221
+ * * The caller must be a signed account.
12222
+ *
12223
+ * # Events
11614
12224
  *
11615
- * # Parameters
11616
- * - `origin`: The account that is pre-registering for the service blueprint.
11617
- * - `blueprint_id`: The ID of the service blueprint.
12225
+ * * [`Event::PreRegistration`] - Emitted when pre-registration is successful, containing:
12226
+ * - `operator: T::AccountId` - The account ID of the pre-registering operator
12227
+ * - `blueprint_id: u64` - The ID of the blueprint being pre-registered for
12228
+ *
12229
+ * # Errors
12230
+ *
12231
+ * * [`Error::BadOrigin`] - The origin was not signed.
11618
12232
  **/
11619
12233
  preRegister: AugmentedSubmittable<(blueprintId: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;
11620
12234
  /**
11621
12235
  * Register the caller as an operator for a specific blueprint.
11622
12236
  *
11623
- * The caller may require an approval first before they can accept to provide the service
11624
- * for the users.
12237
+ * This function allows an account to register as an operator for a blueprint by providing their
12238
+ * service preferences, registration arguments, and staking the required tokens. The operator must
12239
+ * be active in the delegation system and may require approval before accepting service requests.
12240
+ *
12241
+ * # Permissions
12242
+ *
12243
+ * * The caller must be a signed account
12244
+ * * The caller must be an active operator in the delegation system
12245
+ * * The caller must not already be registered for this blueprint
12246
+ *
12247
+ * # Arguments
12248
+ *
12249
+ * * `origin` - The origin of the call. Must be signed.
12250
+ * * `blueprint_id` - The identifier of the service blueprint to register for
12251
+ * * `preferences` - The operator's service preferences and configuration
12252
+ * * `registration_args` - Registration arguments required by the blueprint
12253
+ * * `value` - Amount of tokens to stake for registration
12254
+ *
12255
+ * # Errors
12256
+ *
12257
+ * * [`Error::OperatorNotActive`] - Caller is not an active operator in the delegation system
12258
+ * * [`Error::AlreadyRegistered`] - Caller is already registered for this blueprint
12259
+ * * [`Error::TypeCheck`] - Registration arguments failed type checking
12260
+ * * [`Error::InvalidRegistrationInput`] - Registration hook rejected the registration
12261
+ * * [`Error::MaxServicesPerProviderExceeded`] - Operator has reached maximum services limit
11625
12262
  **/
11626
12263
  register: AugmentedSubmittable<(blueprintId: Compact<u64> | AnyNumber | Uint8Array, preferences: TanglePrimitivesServicesOperatorPreferences | {
11627
12264
  key?: any;
@@ -11660,15 +12297,57 @@ declare module '@polkadot/api-base/types/submittable' {
11660
12297
  AccountId: any;
11661
12298
  } | string | Uint8Array)[], value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>, TanglePrimitivesServicesOperatorPreferences, Vec<TanglePrimitivesServicesField>, Compact<u128>]>;
11662
12299
  /**
11663
- * Reject a service request.
11664
- * The service will not be initiated, and the requester will need to update the service
11665
- * request.
12300
+ * Reject a service request, preventing its initiation.
12301
+ *
12302
+ * The service request will remain in the system but marked as rejected. The requester will
12303
+ * need to update the service request to proceed.
12304
+ *
12305
+ * # Permissions
12306
+ *
12307
+ * * Caller must be a registered operator for the blueprint associated with this request
12308
+ * * Caller must be one of the operators required to approve this request
12309
+ *
12310
+ * # Arguments
12311
+ *
12312
+ * * `origin` - The origin of the call, must be a signed account
12313
+ * * `request_id` - The ID of the service request to reject
12314
+ *
12315
+ * # Errors
12316
+ *
12317
+ * * [`Error::ApprovalNotRequested`] - Caller is not one of the operators required to approve this request
12318
+ * * [`Error::ExpectedAccountId`] - Failed to convert refund address to account ID when refunding payment
12319
+ * * [`Error::RejectionInterrupted`] - Rejection was interrupted by blueprint hook
11666
12320
  **/
11667
12321
  reject: AugmentedSubmittable<(requestId: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;
11668
12322
  /**
11669
- * Request a new service to be initiated using the provided blueprint with a list of
11670
- * operators that will run your service. Optionally, you can customize who is permitted
11671
- * caller of this service, by default only the caller is allowed to call the service.
12323
+ * Request a new service using a blueprint and specified operators.
12324
+ *
12325
+ * # Arguments
12326
+ *
12327
+ * * `origin: OriginFor<T>` - The origin of the call. Must be signed.
12328
+ * * `evm_origin: Option<H160>` - Optional EVM address for ERC20 payments.
12329
+ * * `blueprint_id: u64` - The identifier of the blueprint to use.
12330
+ * * `permitted_callers: Vec<T::AccountId>` - Accounts allowed to call the service. If empty, only owner can call.
12331
+ * * `operators: Vec<T::AccountId>` - List of operators that will run the service.
12332
+ * * `request_args: Vec<Field<T::Constraints, T::AccountId>>` - Blueprint initialization arguments.
12333
+ * * `assets: Vec<T::AssetId>` - Required assets for the service.
12334
+ * * `ttl: BlockNumberFor<T>` - Time-to-live in blocks for the service request.
12335
+ * * `payment_asset: Asset<T::AssetId>` - Asset used for payment (native, custom or ERC20).
12336
+ * * `value: BalanceOf<T>` - Payment amount for the service.
12337
+ *
12338
+ * # Permissions
12339
+ *
12340
+ * * Must be signed by an account with sufficient balance to pay for the service.
12341
+ * * For ERC20 payments, the EVM origin must match the caller's mapped account.
12342
+ *
12343
+ * # Errors
12344
+ *
12345
+ * * [`Error::TypeCheck`] - Request arguments fail blueprint type checking.
12346
+ * * [`Error::NoAssetsProvided`] - No assets were specified.
12347
+ * * [`Error::MissingEVMOrigin`] - EVM origin required but not provided for ERC20 payment.
12348
+ * * [`Error::ERC20TransferFailed`] - ERC20 token transfer failed.
12349
+ * * [`Error::NotRegistered`] - One or more operators not registered for blueprint.
12350
+ * * [`Error::BlueprintNotFound`] - The blueprint_id does not exist.
11672
12351
  **/
11673
12352
  request: AugmentedSubmittable<(evmOrigin: Option<H160> | null | Uint8Array | H160 | string, blueprintId: Compact<u64> | AnyNumber | Uint8Array, permittedCallers: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], operators: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], requestArgs: Vec<TanglePrimitivesServicesField> | (TanglePrimitivesServicesField | {
11674
12353
  None: any;
@@ -11708,16 +12387,54 @@ declare module '@polkadot/api-base/types/submittable' {
11708
12387
  Erc20: any;
11709
12388
  } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Option<H160>, Compact<u64>, Vec<AccountId32>, Vec<AccountId32>, Vec<TanglePrimitivesServicesField>, Vec<u128>, Compact<u64>, TanglePrimitivesServicesAsset, Compact<u128>]>;
11710
12389
  /**
11711
- * Slash an operator (offender) for a service id with a given percent of their exposed
11712
- * stake for that service.
12390
+ * Slash an operator's stake for a service by scheduling a deferred slashing action.
12391
+ *
12392
+ * This function schedules a deferred slashing action against an operator's stake for a specific service.
12393
+ * The slash is not applied immediately, but rather queued to be executed by another entity later.
12394
+ *
12395
+ * # Permissions
12396
+ *
12397
+ * * The caller must be an authorized Slash Origin for the target service, as determined by
12398
+ * `query_slashing_origin`. If no slashing origin is set, or the caller does not match, the call
12399
+ * will fail.
12400
+ *
12401
+ * # Arguments
12402
+ *
12403
+ * * `origin` - The origin of the call. Must be signed by an authorized Slash Origin.
12404
+ * * `offender` - The account ID of the operator to be slashed.
12405
+ * * `service_id` - The ID of the service for which to slash the operator.
12406
+ * * `percent` - The percentage of the operator's exposed stake to slash, as a `Percent` value.
11713
12407
  *
11714
- * The caller needs to be an authorized Slash Origin for this service.
11715
- * Note that this does not apply the slash directly, but instead schedules a deferred call
11716
- * to apply the slash by another entity.
12408
+ * # Errors
12409
+ *
12410
+ * * `NoSlashingOrigin` - No slashing origin is set for the service
12411
+ * * `BadOrigin` - Caller is not the authorized slashing origin
12412
+ * * `OffenderNotOperator` - Target account is not an operator for this service
12413
+ * * `OffenderNotActiveOperator` - Target operator is not currently active
11717
12414
  **/
11718
12415
  slash: AugmentedSubmittable<(offender: AccountId32 | string | Uint8Array, serviceId: Compact<u64> | AnyNumber | Uint8Array, percent: Compact<Percent> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, Compact<u64>, Compact<Percent>]>;
11719
12416
  /**
11720
- * Submit the job result by using the service ID and call ID.
12417
+ * Submit a result for a previously called job.
12418
+ *
12419
+ * # Arguments
12420
+ *
12421
+ * * `service_id` - ID of the service
12422
+ * * `call_id` - ID of the job call
12423
+ * * `result` - Vector of result fields
12424
+ *
12425
+ * # Permissions
12426
+ *
12427
+ * * Caller must be an operator of the service
12428
+ *
12429
+ * # Errors
12430
+ *
12431
+ * * [`Error::ServiceNotFound`] - The service_id does not exist
12432
+ * * [`Error::JobCallNotFound`] - The call_id does not exist
12433
+ * * [`Error::JobDefinitionNotFound`] - The job index is invalid
12434
+ * * [`Error::MaxFieldsExceeded`] - Too many result fields provided
12435
+ * * [`Error::TypeCheck`] - Result fields fail type checking
12436
+ * * [`Error::InvalidJobResult`] - Job result was rejected by hooks
12437
+ * * [`DispatchError::BadOrigin`] - Caller is not an operator
11721
12438
  **/
11722
12439
  submitResult: AugmentedSubmittable<(serviceId: Compact<u64> | AnyNumber | Uint8Array, callId: Compact<u64> | AnyNumber | Uint8Array, result: Vec<TanglePrimitivesServicesField> | (TanglePrimitivesServicesField | {
11723
12440
  None: any;
@@ -11753,27 +12470,85 @@ declare module '@polkadot/api-base/types/submittable' {
11753
12470
  AccountId: any;
11754
12471
  } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [Compact<u64>, Compact<u64>, Vec<TanglePrimitivesServicesField>]>;
11755
12472
  /**
11756
- * Terminates the service by the owner of the service.
12473
+ * Terminates a running service instance.
12474
+ *
12475
+ * # Permissions
12476
+ *
12477
+ * * Must be signed by the service owner
12478
+ *
12479
+ * # Arguments
12480
+ *
12481
+ * * `origin` - The origin of the call
12482
+ * * `service_id` - The identifier of the service to terminate
12483
+ *
12484
+ * # Errors
12485
+ *
12486
+ * * [`Error::ServiceNotFound`] - The service_id does not exist
12487
+ * * [`Error::NotRegistered`] - Service operator not registered
12488
+ * * [`Error::TerminationInterrupted`] - Service termination was interrupted by hooks
12489
+ * * [`DispatchError::BadOrigin`] - Caller is not the service owner
11757
12490
  **/
11758
12491
  terminate: AugmentedSubmittable<(serviceId: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;
11759
12492
  /**
11760
- * Unregister the caller from being an operator for the service blueprint
11761
- * so that, no more services will assigned to the caller for this specific blueprint.
11762
- * Note that, the caller needs to keep providing service for other active service
11763
- * that uses this blueprint, until the end of service time, otherwise they may get reported
11764
- * and slashed.
12493
+ * Unregisters a service provider from a specific service blueprint.
12494
+ *
12495
+ * After unregistering, the provider will no longer receive new service assignments for this blueprint.
12496
+ * However, they must continue servicing any active assignments until completion to avoid penalties.
12497
+ *
12498
+ * # Arguments
12499
+ *
12500
+ * * `origin` - The origin of the call. Must be signed.
12501
+ * * `blueprint_id` - The identifier of the service blueprint to unregister from.
12502
+ *
12503
+ * # Permissions
12504
+ *
12505
+ * * Must be signed by a registered service provider
12506
+ *
12507
+ * # Errors
12508
+ *
12509
+ * * [`Error::NotRegistered`] - The caller is not registered for this blueprint
12510
+ * * [`Error::NotAllowedToUnregister`] - Unregistration is currently restricted
12511
+ * * [`Error::BlueprintNotFound`] - The blueprint_id does not exist
11765
12512
  **/
11766
12513
  unregister: AugmentedSubmittable<(blueprintId: Compact<u64> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u64>]>;
11767
12514
  /**
11768
- * Adds a new Master Blueprint Service Manager to the list of revisions.
12515
+ * Updates the Master Blueprint Service Manager by adding a new revision.
12516
+ *
12517
+ * # Permissions
12518
+ *
12519
+ * * Caller must be an authorized Master Blueprint Service Manager Update Origin
12520
+ *
12521
+ * # Arguments
12522
+ *
12523
+ * * `origin` - Origin of the call
12524
+ * * `address` - New manager address to add
12525
+ *
12526
+ * # Errors
11769
12527
  *
11770
- * The caller needs to be an authorized Master Blueprint Service Manager Update Origin.
12528
+ * * [Error::MaxMasterBlueprintServiceManagerVersionsExceeded] - Maximum number of revisions reached
11771
12529
  **/
11772
12530
  updateMasterBlueprintServiceManager: AugmentedSubmittable<(address: H160 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H160]>;
11773
12531
  /**
11774
- * Update the price targets for the caller for a specific service blueprint.
12532
+ * Updates the price targets for a registered operator's service blueprint.
12533
+ *
12534
+ * Allows an operator to modify their price targets for a specific blueprint they are registered for.
12535
+ * The operator must already be registered for the blueprint to update prices.
12536
+ *
12537
+ * # Arguments
12538
+ *
12539
+ * * `origin: OriginFor<T>` - The origin of the call. Must be signed by the operator.
12540
+ * * `blueprint_id: u64` - The identifier of the blueprint to update price targets for.
12541
+ * * `price_targets: PriceTargets` - The new price targets to set for the blueprint.
12542
+ *
12543
+ * # Permissions
12544
+ *
12545
+ * * Must be signed by a registered operator for this blueprint.
12546
+ *
12547
+ * # Errors
11775
12548
  *
11776
- * See [`Self::register`] for more information.
12549
+ * * [`Error::NotRegistered`] - The caller is not registered for this blueprint.
12550
+ * * [`Error::NotAllowedToUpdatePriceTargets`] - Price target updates are currently restricted.
12551
+ * * [`Error::BlueprintNotFound`] - The blueprint_id does not exist.
11777
12552
  **/
11778
12553
  updatePriceTargets: AugmentedSubmittable<(blueprintId: Compact<u64> | AnyNumber | Uint8Array, priceTargets: TanglePrimitivesServicesPriceTargets | {
11779
12554
  cpu?: any;