diff --git a/modules/sdk-core/src/bitgo/staking/iStakingWallet.ts b/modules/sdk-core/src/bitgo/staking/iStakingWallet.ts index 7aa3f5fa03..6c423a306f 100644 --- a/modules/sdk-core/src/bitgo/staking/iStakingWallet.ts +++ b/modules/sdk-core/src/bitgo/staking/iStakingWallet.ts @@ -164,6 +164,14 @@ export interface StakeOptions { region?: string; } +export interface XdcStakeOptions extends StakeOptions { + /** + * XDC masternode KYC document hash — IPFS CIDv0 (Qm...) returned by the + * staking-service KYC upload endpoint, injected before calling stake(). + */ + kycHash?: string; +} + export interface TronStakeOptions extends StakeOptions { /** * Tron staking resource type (Energy or Bandwidth) @@ -311,7 +319,7 @@ export interface IStakingWallet { readonly walletId: string; readonly coin: string; stake( - options: StakeOptions | TronStakeOptions | TaoStakeOptions | VetStakeOptions | StoryStakeOptions + options: StakeOptions | TronStakeOptions | TaoStakeOptions | VetStakeOptions | StoryStakeOptions | XdcStakeOptions ): Promise; unstake(options: UnstakeOptions | EthUnstakeOptions): Promise; switchValidator(options: SwitchValidatorOptions | TaoSwitchValidatorOptions): Promise; diff --git a/modules/sdk-core/src/bitgo/staking/stakingWallet.ts b/modules/sdk-core/src/bitgo/staking/stakingWallet.ts index f67c1f6f55..0521aed59e 100644 --- a/modules/sdk-core/src/bitgo/staking/stakingWallet.ts +++ b/modules/sdk-core/src/bitgo/staking/stakingWallet.ts @@ -25,6 +25,7 @@ import { TaoSwitchValidatorOptions, VetStakeOptions, StoryStakeOptions, + XdcStakeOptions, } from './iStakingWallet'; import { BitGoBase } from '../bitgoBase'; import { IWallet, PrebuildTransactionResult } from '../wallet'; @@ -63,7 +64,7 @@ export class StakingWallet implements IStakingWallet { * @return StakingRequest */ async stake( - options: StakeOptions | TronStakeOptions | TaoStakeOptions | VetStakeOptions | StoryStakeOptions + options: StakeOptions | TronStakeOptions | TaoStakeOptions | VetStakeOptions | StoryStakeOptions | XdcStakeOptions ): Promise { return await this.createStakingRequest(options, 'STAKE'); } @@ -325,7 +326,8 @@ export class StakingWallet implements IStakingWallet { | TaoStakeOptions | TaoSwitchValidatorOptions | VetStakeOptions - | StoryStakeOptions, + | StoryStakeOptions + | XdcStakeOptions, type: string ): Promise { return await this.bitgo