From 95adc1d396826ab1bd1f422975e642aa14341a63 Mon Sep 17 00:00:00 2001 From: Quazia Date: Thu, 4 Jan 2024 11:52:48 -0500 Subject: [PATCH] Feat(actions): add options type --- src/actions/index.ts | 1 + src/actions/types.ts | 23 +++++++++++++++++++++-- src/index.ts | 1 + 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/actions/index.ts b/src/actions/index.ts index 0e252e3..b054cc6 100644 --- a/src/actions/index.ts +++ b/src/actions/index.ts @@ -5,6 +5,7 @@ export type { MintActionParams, BurnActionParams, QuestActionParams, + OptionsActionParams, DelegateActionParams, ActionParams, IActionPlugin, diff --git a/src/actions/types.ts b/src/actions/types.ts index 24c7e64..51ae970 100644 --- a/src/actions/types.ts +++ b/src/actions/types.ts @@ -13,6 +13,17 @@ export type SwapActionParams = { deadline?: bigint | FilterOperator } + + +export type OptionsActionParams = { + chainId: number + contractAddress?: Address + token?: Address + amount?: bigint | FilterOperator + recipient?: Address + orderType?: OrderType +} + export type StakeActionParams = { chainId: number contractAddress?: Address @@ -66,9 +77,8 @@ export type ActionParams = | BridgeActionParams | MintActionParams | DelegateActionParams - | MintActionParams | QuestActionParams - + | OptionsActionParams export interface IActionPlugin { pluginId: string getSupportedChainIds: (task?: ActionType) => Promise @@ -97,6 +107,9 @@ export interface IActionPlugin { quest?: ( params: QuestActionParams, ) => Promise | Promise + options?: ( + params: OptionsActionParams, + ) => Promise | Promise } export enum ActionType { @@ -110,4 +123,10 @@ export enum ActionType { Delegate = 'delegate', Lend = 'lend', Other = 'other', + Options = 'options', } + +export enum OrderType { + Limit = 'limit', + Market = 'market', +} \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index 391e0e8..80a5995 100644 --- a/src/index.ts +++ b/src/index.ts @@ -13,6 +13,7 @@ export type { StakeActionParams, BridgeActionParams, MintActionParams, + OptionsActionParams, DelegateActionParams, ActionParams, IActionPlugin,