@cheqd/sdk 5.3.2 → 5.3.3-develop.1
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.
- package/README.md +310 -0
- package/build/cjs/index.d.ts +92 -1
- package/build/cjs/index.d.ts.map +1 -1
- package/build/cjs/index.js +75 -2
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/modules/_.d.ts +61 -0
- package/build/cjs/modules/_.d.ts.map +1 -1
- package/build/cjs/modules/_.js +50 -0
- package/build/cjs/modules/_.js.map +1 -1
- package/build/cjs/modules/did.d.ts +278 -0
- package/build/cjs/modules/did.d.ts.map +1 -1
- package/build/cjs/modules/did.js +242 -0
- package/build/cjs/modules/did.js.map +1 -1
- package/build/cjs/modules/feeabstraction.d.ts +297 -2
- package/build/cjs/modules/feeabstraction.d.ts.map +1 -1
- package/build/cjs/modules/feeabstraction.js +235 -4
- package/build/cjs/modules/feeabstraction.js.map +1 -1
- package/build/cjs/modules/feemarket.d.ts +154 -21
- package/build/cjs/modules/feemarket.d.ts.map +1 -1
- package/build/cjs/modules/feemarket.js +133 -22
- package/build/cjs/modules/feemarket.js.map +1 -1
- package/build/cjs/modules/resource.d.ts +143 -0
- package/build/cjs/modules/resource.d.ts.map +1 -1
- package/build/cjs/modules/resource.js +131 -0
- package/build/cjs/modules/resource.js.map +1 -1
- package/build/cjs/querier.d.ts +50 -0
- package/build/cjs/querier.d.ts.map +1 -1
- package/build/cjs/querier.js +50 -0
- package/build/cjs/querier.js.map +1 -1
- package/build/cjs/registry.d.ts +14 -0
- package/build/cjs/registry.d.ts.map +1 -1
- package/build/cjs/registry.js +14 -0
- package/build/cjs/registry.js.map +1 -1
- package/build/cjs/signer.d.ts +172 -1
- package/build/cjs/signer.d.ts.map +1 -1
- package/build/cjs/signer.js +172 -1
- package/build/cjs/signer.js.map +1 -1
- package/build/cjs/types.d.ts +91 -0
- package/build/cjs/types.d.ts.map +1 -1
- package/build/cjs/types.js +17 -0
- package/build/cjs/types.js.map +1 -1
- package/build/cjs/utils.d.ts +188 -0
- package/build/cjs/utils.d.ts.map +1 -1
- package/build/cjs/utils.js +195 -0
- package/build/cjs/utils.js.map +1 -1
- package/build/esm/index.d.ts +92 -1
- package/build/esm/index.d.ts.map +1 -1
- package/build/esm/index.js +74 -1
- package/build/esm/index.js.map +1 -1
- package/build/esm/modules/_.d.ts +42 -0
- package/build/esm/modules/_.d.ts.map +1 -1
- package/build/esm/modules/_.js +32 -0
- package/build/esm/modules/_.js.map +1 -1
- package/build/esm/modules/did.d.ts +274 -0
- package/build/esm/modules/did.d.ts.map +1 -1
- package/build/esm/modules/did.js +242 -0
- package/build/esm/modules/did.js.map +1 -1
- package/build/esm/modules/feeabstraction.d.ts +277 -2
- package/build/esm/modules/feeabstraction.d.ts.map +1 -1
- package/build/esm/modules/feeabstraction.js +221 -2
- package/build/esm/modules/feeabstraction.js.map +1 -1
- package/build/esm/modules/feemarket.d.ts +152 -21
- package/build/esm/modules/feemarket.d.ts.map +1 -1
- package/build/esm/modules/feemarket.js +131 -21
- package/build/esm/modules/feemarket.js.map +1 -1
- package/build/esm/modules/resource.d.ts +142 -0
- package/build/esm/modules/resource.d.ts.map +1 -1
- package/build/esm/modules/resource.js +130 -0
- package/build/esm/modules/resource.js.map +1 -1
- package/build/esm/querier.d.ts +50 -0
- package/build/esm/querier.d.ts.map +1 -1
- package/build/esm/querier.js +50 -0
- package/build/esm/querier.js.map +1 -1
- package/build/esm/registry.d.ts +14 -0
- package/build/esm/registry.d.ts.map +1 -1
- package/build/esm/registry.js +14 -0
- package/build/esm/registry.js.map +1 -1
- package/build/esm/signer.d.ts +122 -0
- package/build/esm/signer.d.ts.map +1 -1
- package/build/esm/signer.js +122 -0
- package/build/esm/signer.js.map +1 -1
- package/build/esm/types.d.ts +92 -0
- package/build/esm/types.d.ts.map +1 -1
- package/build/esm/types.js +17 -0
- package/build/esm/types.js.map +1 -1
- package/build/esm/utils.d.ts +178 -0
- package/build/esm/utils.d.ts.map +1 -1
- package/build/esm/utils.js +171 -0
- package/build/esm/utils.js.map +1 -1
- package/build/types/index.d.ts +92 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/types/modules/_.d.ts +42 -0
- package/build/types/modules/_.d.ts.map +1 -1
- package/build/types/modules/did.d.ts +274 -0
- package/build/types/modules/did.d.ts.map +1 -1
- package/build/types/modules/feeabstraction.d.ts +277 -2
- package/build/types/modules/feeabstraction.d.ts.map +1 -1
- package/build/types/modules/feemarket.d.ts +152 -21
- package/build/types/modules/feemarket.d.ts.map +1 -1
- package/build/types/modules/resource.d.ts +142 -0
- package/build/types/modules/resource.d.ts.map +1 -1
- package/build/types/querier.d.ts +50 -0
- package/build/types/querier.d.ts.map +1 -1
- package/build/types/registry.d.ts +14 -0
- package/build/types/registry.d.ts.map +1 -1
- package/build/types/signer.d.ts +122 -0
- package/build/types/signer.d.ts.map +1 -1
- package/build/types/types.d.ts +92 -0
- package/build/types/types.d.ts.map +1 -1
- package/build/types/utils.d.ts +178 -0
- package/build/types/utils.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,47 +5,120 @@ import { AbstractCheqdSDKModule, MinimalImportableCheqdSDKModule } from './_';
|
|
|
5
5
|
import { DidStdFee, IContext, QueryExtensionSetup } from '../types';
|
|
6
6
|
import { CheqdQuerier } from '../querier';
|
|
7
7
|
import { CheqdSigningStargateClient } from '../signer';
|
|
8
|
+
/** Default extension key for fee market-related query operations */
|
|
8
9
|
export declare const defaultFeemarketExtensionKey: "feemarket";
|
|
10
|
+
/**
|
|
11
|
+
* Protobuf message type literals for fee market operations.
|
|
12
|
+
* Used for consistent message type identification across the module.
|
|
13
|
+
*/
|
|
9
14
|
export declare const protobufLiterals: {
|
|
15
|
+
/** Gas price response message type */
|
|
10
16
|
readonly GasPriceResponse: "GasPriceResponse";
|
|
17
|
+
/** Gas prices response message type */
|
|
11
18
|
readonly GasPricesResponse: "GasPricesResponse";
|
|
19
|
+
/** Parameters response message type */
|
|
12
20
|
readonly ParamsResponse: "ParamsResponse";
|
|
13
21
|
};
|
|
22
|
+
/** Type URL for GasPriceResponse messages */
|
|
14
23
|
export declare const typeUrlGasPriceResponse: "/feemarket.feemarket.v1.GasPriceResponse";
|
|
24
|
+
/** Type URL for GasPricesResponse messages */
|
|
15
25
|
export declare const typeUrlGasPricesResponse: "/feemarket.feemarket.v1.GasPricesResponse";
|
|
26
|
+
/** Type URL for ParamsResponse messages */
|
|
16
27
|
export declare const typeUrlParamsResponse: "/feemarket.feemarket.v1.ParamsResponse";
|
|
28
|
+
/**
|
|
29
|
+
* Default gas price tier names for fee calculation.
|
|
30
|
+
* Provides predefined tiers for different transaction priority levels.
|
|
31
|
+
*/
|
|
17
32
|
export declare const defaultGasPriceTiers: {
|
|
33
|
+
/** Low priority tier with lowest gas prices */
|
|
18
34
|
readonly Low: "DefaultLowTier";
|
|
35
|
+
/** Average priority tier with moderate gas prices */
|
|
19
36
|
readonly Avg: "DefaultAvgTier";
|
|
37
|
+
/** High priority tier with highest gas prices */
|
|
20
38
|
readonly High: "DefaultHighTier";
|
|
21
39
|
};
|
|
40
|
+
/** Type representing the available default gas price tiers */
|
|
41
|
+
/** Type representing the available default gas price tiers */
|
|
22
42
|
export type DefaultGasPriceTiers = (typeof defaultGasPriceTiers)[keyof typeof defaultGasPriceTiers];
|
|
43
|
+
/**
|
|
44
|
+
* Encode object interface for GasPriceResponse messages.
|
|
45
|
+
* Used for type-safe message encoding in gas price operations.
|
|
46
|
+
*/
|
|
23
47
|
export interface GasPriceEncodeObject extends EncodeObject {
|
|
24
48
|
readonly typeUrl: typeof typeUrlGasPriceResponse;
|
|
25
49
|
readonly value: Partial<GasPriceResponse>;
|
|
26
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Type guard function to check if an object is a GasPriceEncodeObject.
|
|
53
|
+
*
|
|
54
|
+
* @param obj - EncodeObject to check
|
|
55
|
+
* @returns True if the object is a GasPriceEncodeObject
|
|
56
|
+
*/
|
|
27
57
|
export declare function isGasPriceEncodeObject(obj: EncodeObject): obj is GasPriceEncodeObject;
|
|
58
|
+
/**
|
|
59
|
+
* Encode object interface for GasPricesResponse messages.
|
|
60
|
+
* Used for type-safe message encoding in gas prices query operations.
|
|
61
|
+
*/
|
|
28
62
|
export interface GasPricesEncodeObject extends EncodeObject {
|
|
29
63
|
readonly typeUrl: typeof typeUrlGasPricesResponse;
|
|
30
64
|
readonly value: Partial<GasPricesResponse>;
|
|
31
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Type guard function to check if an object is a GasPricesEncodeObject.
|
|
68
|
+
*
|
|
69
|
+
* @param obj - EncodeObject to check
|
|
70
|
+
* @returns True if the object is a GasPricesEncodeObject
|
|
71
|
+
*/
|
|
32
72
|
export declare function isGasPricesEncodeObject(obj: EncodeObject): obj is GasPricesEncodeObject;
|
|
73
|
+
/**
|
|
74
|
+
* Encode object interface for ParamsResponse messages.
|
|
75
|
+
* Used for type-safe message encoding in parameter query operations.
|
|
76
|
+
*/
|
|
33
77
|
export interface ParamsEncodeObject extends EncodeObject {
|
|
34
78
|
readonly typeUrl: typeof typeUrlParamsResponse;
|
|
35
79
|
readonly value: Partial<ParamsResponse>;
|
|
36
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Type guard function to check if an object is a ParamsEncodeObject.
|
|
83
|
+
*
|
|
84
|
+
* @param obj - EncodeObject to check
|
|
85
|
+
* @returns True if the object is a ParamsEncodeObject
|
|
86
|
+
*/
|
|
37
87
|
export declare function isParamsEncodeObject(obj: EncodeObject): obj is ParamsEncodeObject;
|
|
88
|
+
/** Minimal importable version of the fee market module for clean external interfaces */
|
|
38
89
|
export type MinimalImportableFeemarketModule = MinimalImportableCheqdSDKModule<FeemarketModule>;
|
|
90
|
+
/**
|
|
91
|
+
* Fee market extension interface for querier functionality.
|
|
92
|
+
* Provides methods for querying gas prices and fee market parameters.
|
|
93
|
+
*/
|
|
39
94
|
export type FeemarketExtension = {
|
|
40
95
|
readonly [defaultFeemarketExtensionKey]: {
|
|
96
|
+
/** Query gas price for a specific denomination */
|
|
41
97
|
readonly gasPrice: (denom: string) => Promise<GasPriceResponse>;
|
|
98
|
+
/** Query all available gas prices */
|
|
42
99
|
readonly gasPrices: () => Promise<GasPricesResponse>;
|
|
100
|
+
/** Query fee market module parameters */
|
|
43
101
|
readonly params: () => Promise<ParamsResponse>;
|
|
44
102
|
};
|
|
45
103
|
};
|
|
104
|
+
/**
|
|
105
|
+
* Sets up the fee market extension for the querier client.
|
|
106
|
+
* Creates and configures the fee market-specific query methods.
|
|
107
|
+
*
|
|
108
|
+
* @param base - Base QueryClient to extend
|
|
109
|
+
* @returns Configured fee market extension with query methods
|
|
110
|
+
*/
|
|
46
111
|
export declare const setupFeemarketExtension: (base: QueryClient) => FeemarketExtension;
|
|
112
|
+
/**
|
|
113
|
+
* Fee Market Module class providing comprehensive fee market functionality.
|
|
114
|
+
* Handles gas price queries, dynamic fee calculation, and fee market parameter management.
|
|
115
|
+
*/
|
|
47
116
|
export declare class FeemarketModule extends AbstractCheqdSDKModule {
|
|
48
117
|
static readonly registryTypes: Iterable<[string, GeneratedType]>;
|
|
118
|
+
/**
|
|
119
|
+
* Default gas prices for different priority tiers.
|
|
120
|
+
* Used as fallback when live gas price queries are unavailable.
|
|
121
|
+
*/
|
|
49
122
|
static readonly defaultGasPrices: {
|
|
50
123
|
DefaultLowTier: {
|
|
51
124
|
amount: string;
|
|
@@ -60,51 +133,111 @@ export declare class FeemarketModule extends AbstractCheqdSDKModule {
|
|
|
60
133
|
denom: string;
|
|
61
134
|
};
|
|
62
135
|
};
|
|
136
|
+
/** Gas offset factor used for adjusting live gas prices */
|
|
63
137
|
static readonly gasOffsetFactor: number;
|
|
138
|
+
/** Address of the fee collector account that receives transaction fees */
|
|
64
139
|
static readonly feeCollectorAddress: "cheqd13pxn9n3qw79e03844rdadagmg0nshmwfszqu0g";
|
|
140
|
+
/** Address of the fee market module account */
|
|
65
141
|
static readonly moduleAccountAddress: "cheqd1el68mjnzv87uurqks8u29tec0cj3297047g2dl";
|
|
142
|
+
/** Querier extension setup function for fee market operations */
|
|
66
143
|
static readonly querierExtensionSetup: QueryExtensionSetup<FeemarketExtension>;
|
|
144
|
+
/** Querier instance with fee market extension capabilities */
|
|
145
|
+
/** Querier instance with fee market extension capabilities */
|
|
67
146
|
querier: CheqdQuerier & FeemarketExtension;
|
|
147
|
+
/**
|
|
148
|
+
* Constructs a new fee market module instance.
|
|
149
|
+
*
|
|
150
|
+
* @param signer - Signing client for blockchain transactions
|
|
151
|
+
* @param querier - Querier client with fee market extension for data retrieval
|
|
152
|
+
*/
|
|
68
153
|
constructor(signer: CheqdSigningStargateClient, querier: CheqdQuerier & FeemarketExtension);
|
|
154
|
+
/**
|
|
155
|
+
* Gets the registry types for fee market message encoding/decoding.
|
|
156
|
+
*
|
|
157
|
+
* @returns Iterable of [typeUrl, GeneratedType] pairs for the registry
|
|
158
|
+
*/
|
|
69
159
|
getRegistryTypes(): Iterable<[string, GeneratedType]>;
|
|
160
|
+
/**
|
|
161
|
+
* Gets the querier extension setup for fee market operations.
|
|
162
|
+
*
|
|
163
|
+
* @returns Query extension setup function for fee market functionality
|
|
164
|
+
*/
|
|
70
165
|
getQuerierExtensionSetup(): QueryExtensionSetup<FeemarketExtension>;
|
|
166
|
+
/**
|
|
167
|
+
* Queries the current gas price for a specific denomination.
|
|
168
|
+
* Retrieves live gas price data from the fee market module.
|
|
169
|
+
*
|
|
170
|
+
* @param denom - Token denomination to query gas price for
|
|
171
|
+
* @param context - Optional SDK context for accessing clients
|
|
172
|
+
* @returns Promise resolving to the gas price response
|
|
173
|
+
*/
|
|
71
174
|
queryGasPrice(denom: string, context?: IContext): Promise<GasPriceResponse>;
|
|
175
|
+
/**
|
|
176
|
+
* Queries all available gas prices from the fee market.
|
|
177
|
+
* Retrieves comprehensive gas pricing information for all denominations.
|
|
178
|
+
*
|
|
179
|
+
* @param context - Optional SDK context for accessing clients
|
|
180
|
+
* @returns Promise resolving to the gas prices response
|
|
181
|
+
*/
|
|
72
182
|
queryGasPrices(context?: IContext): Promise<GasPricesResponse>;
|
|
183
|
+
/**
|
|
184
|
+
* Queries the fee market module parameters.
|
|
185
|
+
* Retrieves configuration settings for the fee market functionality.
|
|
186
|
+
*
|
|
187
|
+
* @param context - Optional SDK context for accessing clients
|
|
188
|
+
* @returns Promise resolving to the parameters response
|
|
189
|
+
*/
|
|
73
190
|
queryParams(context?: IContext): Promise<ParamsResponse>;
|
|
74
191
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
192
|
+
* Generates gas price for a denomination by live polling the fee market.
|
|
193
|
+
* Queries current gas prices and adjusts them using the gas offset factor.
|
|
194
|
+
* Throws an error if live polling fails.
|
|
195
|
+
*
|
|
196
|
+
* @param denom - Token denomination to generate gas price for
|
|
197
|
+
* @param context - Optional SDK context for accessing clients
|
|
198
|
+
* @returns Promise resolving to the calculated gas price
|
|
199
|
+
* @throws Error if live poll for gas price fails or returns invalid data
|
|
78
200
|
*/
|
|
79
201
|
generateGasPrice(denom: string, context?: IContext): Promise<GasPrice>;
|
|
80
202
|
/**
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* @
|
|
203
|
+
* Generates offline gas price for a denomination using static tier pricing.
|
|
204
|
+
* Uses predefined gas prices as fallback when live polling is unavailable.
|
|
205
|
+
*
|
|
206
|
+
* @param denom - Token denomination to generate gas price for
|
|
207
|
+
* @param tier - Priority tier for gas price calculation (defaults to Low)
|
|
208
|
+
* @returns Promise resolving to the static gas price
|
|
209
|
+
* @throws Error if denomination or tier is invalid
|
|
85
210
|
*/
|
|
86
211
|
generateOfflineGasPrice(denom: string, tier?: DefaultGasPriceTiers): Promise<GasPrice>;
|
|
87
212
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
* @
|
|
213
|
+
* Generates safe gas price with automatic fallback to offline pricing.
|
|
214
|
+
* Attempts live polling first, falls back to static tier pricing if it fails.
|
|
215
|
+
*
|
|
216
|
+
* @param denom - Token denomination to generate gas price for
|
|
217
|
+
* @param tier - Priority tier for fallback gas price calculation (defaults to Low)
|
|
218
|
+
* @param context - Optional SDK context for accessing clients
|
|
219
|
+
* @returns Promise resolving to the gas price (live or fallback)
|
|
92
220
|
*/
|
|
93
221
|
generateSafeGasPrice(denom: string, tier?: DefaultGasPriceTiers, context?: IContext): Promise<GasPrice>;
|
|
94
222
|
/**
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
*
|
|
98
|
-
* @param
|
|
99
|
-
* @
|
|
223
|
+
* Generates safe gas price with exponential backoff retry mechanism.
|
|
224
|
+
* Retries live polling with exponential backoff before falling back to offline pricing.
|
|
225
|
+
*
|
|
226
|
+
* @param denom - Token denomination to generate gas price for
|
|
227
|
+
* @param tier - Priority tier for fallback gas price calculation (defaults to Low)
|
|
228
|
+
* @param backoffOptions - Retry configuration options (defaults to DefaultBackoffOptions)
|
|
229
|
+
* @param context - Optional SDK context for accessing clients
|
|
230
|
+
* @returns Promise resolving to the gas price (live with retries or fallback)
|
|
100
231
|
*/
|
|
101
232
|
generateSafeGasPriceWithExponentialBackoff(denom: string, tier?: DefaultGasPriceTiers, backoffOptions?: Partial<import("exponential-backoff-cjs").IBackOffOptions>, context?: IContext): Promise<GasPrice>;
|
|
102
233
|
/**
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
106
|
-
* @param
|
|
107
|
-
* @
|
|
234
|
+
* Generates transaction fees from a given gas price.
|
|
235
|
+
* Calculates the total fee amount based on gas price and gas limit.
|
|
236
|
+
*
|
|
237
|
+
* @param gasPrice - Gas price to use for fee calculation
|
|
238
|
+
* @param payer - Address of the account paying the transaction fees
|
|
239
|
+
* @param gas - Gas limit for the transaction (defaults to '200000')
|
|
240
|
+
* @returns Standard fee configuration for the transaction
|
|
108
241
|
*/
|
|
109
242
|
static generateFeesFromGasPrice(gasPrice: GasPrice, payer: string, gas?: string): DidStdFee;
|
|
110
243
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feemarket.d.ts","sourceRoot":"","sources":["../../../cjs/src/modules/feemarket.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EAGd,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAA2B,QAAQ,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,MAAM,KAAK,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AAIvD,eAAO,MAAM,4BAA4B,EAAG,WAAoB,CAAC;AAEjE,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"feemarket.d.ts","sourceRoot":"","sources":["../../../cjs/src/modules/feemarket.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,29 +9,72 @@ const stargate_cjs_1 = require("@cosmjs/stargate-cjs");
|
|
|
9
9
|
const _1 = require("./_");
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
const math_cjs_1 = require("@cosmjs/math-cjs");
|
|
12
|
+
/** Default extension key for fee market-related query operations */
|
|
12
13
|
exports.defaultFeemarketExtensionKey = 'feemarket';
|
|
14
|
+
/**
|
|
15
|
+
* Protobuf message type literals for fee market operations.
|
|
16
|
+
* Used for consistent message type identification across the module.
|
|
17
|
+
*/
|
|
13
18
|
exports.protobufLiterals = {
|
|
19
|
+
/** Gas price response message type */
|
|
14
20
|
GasPriceResponse: 'GasPriceResponse',
|
|
21
|
+
/** Gas prices response message type */
|
|
15
22
|
GasPricesResponse: 'GasPricesResponse',
|
|
23
|
+
/** Parameters response message type */
|
|
16
24
|
ParamsResponse: 'ParamsResponse',
|
|
17
25
|
};
|
|
26
|
+
/** Type URL for GasPriceResponse messages */
|
|
18
27
|
exports.typeUrlGasPriceResponse = `/${index_js_1.protobufPackage}.${exports.protobufLiterals.GasPriceResponse}`;
|
|
28
|
+
/** Type URL for GasPricesResponse messages */
|
|
19
29
|
exports.typeUrlGasPricesResponse = `/${index_js_1.protobufPackage}.${exports.protobufLiterals.GasPricesResponse}`;
|
|
30
|
+
/** Type URL for ParamsResponse messages */
|
|
20
31
|
exports.typeUrlParamsResponse = `/${index_js_1.protobufPackage}.${exports.protobufLiterals.ParamsResponse}`;
|
|
32
|
+
/**
|
|
33
|
+
* Default gas price tier names for fee calculation.
|
|
34
|
+
* Provides predefined tiers for different transaction priority levels.
|
|
35
|
+
*/
|
|
21
36
|
exports.defaultGasPriceTiers = {
|
|
37
|
+
/** Low priority tier with lowest gas prices */
|
|
22
38
|
Low: 'DefaultLowTier',
|
|
39
|
+
/** Average priority tier with moderate gas prices */
|
|
23
40
|
Avg: 'DefaultAvgTier',
|
|
41
|
+
/** High priority tier with highest gas prices */
|
|
24
42
|
High: 'DefaultHighTier',
|
|
25
43
|
};
|
|
44
|
+
/**
|
|
45
|
+
* Type guard function to check if an object is a GasPriceEncodeObject.
|
|
46
|
+
*
|
|
47
|
+
* @param obj - EncodeObject to check
|
|
48
|
+
* @returns True if the object is a GasPriceEncodeObject
|
|
49
|
+
*/
|
|
26
50
|
function isGasPriceEncodeObject(obj) {
|
|
27
51
|
return obj.typeUrl === exports.typeUrlGasPriceResponse;
|
|
28
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Type guard function to check if an object is a GasPricesEncodeObject.
|
|
55
|
+
*
|
|
56
|
+
* @param obj - EncodeObject to check
|
|
57
|
+
* @returns True if the object is a GasPricesEncodeObject
|
|
58
|
+
*/
|
|
29
59
|
function isGasPricesEncodeObject(obj) {
|
|
30
60
|
return obj.typeUrl === exports.typeUrlGasPricesResponse;
|
|
31
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Type guard function to check if an object is a ParamsEncodeObject.
|
|
64
|
+
*
|
|
65
|
+
* @param obj - EncodeObject to check
|
|
66
|
+
* @returns True if the object is a ParamsEncodeObject
|
|
67
|
+
*/
|
|
32
68
|
function isParamsEncodeObject(obj) {
|
|
33
69
|
return obj.typeUrl === exports.typeUrlParamsResponse;
|
|
34
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Sets up the fee market extension for the querier client.
|
|
73
|
+
* Creates and configures the fee market-specific query methods.
|
|
74
|
+
*
|
|
75
|
+
* @param base - Base QueryClient to extend
|
|
76
|
+
* @returns Configured fee market extension with query methods
|
|
77
|
+
*/
|
|
35
78
|
const setupFeemarketExtension = (base) => {
|
|
36
79
|
const rpc = (0, stargate_cjs_1.createProtobufRpcClient)(base);
|
|
37
80
|
const queryService = new index_js_1.QueryClientImpl(rpc);
|
|
@@ -50,23 +93,43 @@ const setupFeemarketExtension = (base) => {
|
|
|
50
93
|
};
|
|
51
94
|
};
|
|
52
95
|
exports.setupFeemarketExtension = setupFeemarketExtension;
|
|
96
|
+
/**
|
|
97
|
+
* Fee Market Module class providing comprehensive fee market functionality.
|
|
98
|
+
* Handles gas price queries, dynamic fee calculation, and fee market parameter management.
|
|
99
|
+
*/
|
|
53
100
|
class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
54
|
-
|
|
101
|
+
//@ts-expect-error underlying type `GeneratedType` is intentionally wider
|
|
55
102
|
static registryTypes = [
|
|
56
103
|
[exports.typeUrlGasPriceResponse, index_js_1.GasPriceResponse],
|
|
57
104
|
[exports.typeUrlGasPricesResponse, index_js_1.GasPricesResponse],
|
|
58
105
|
[exports.typeUrlParamsResponse, index_js_1.ParamsResponse],
|
|
59
106
|
];
|
|
107
|
+
/**
|
|
108
|
+
* Default gas prices for different priority tiers.
|
|
109
|
+
* Used as fallback when live gas price queries are unavailable.
|
|
110
|
+
*/
|
|
60
111
|
static defaultGasPrices = {
|
|
61
112
|
[exports.defaultGasPriceTiers.Low]: { amount: '5000', denom: 'ncheq' },
|
|
62
113
|
[exports.defaultGasPriceTiers.Avg]: { amount: '7500', denom: 'ncheq' },
|
|
63
114
|
[exports.defaultGasPriceTiers.High]: { amount: '10000', denom: 'ncheq' },
|
|
64
115
|
};
|
|
116
|
+
/** Gas offset factor used for adjusting live gas prices */
|
|
65
117
|
static gasOffsetFactor = 10 ** 4;
|
|
118
|
+
/** Address of the fee collector account that receives transaction fees */
|
|
66
119
|
static feeCollectorAddress = 'cheqd13pxn9n3qw79e03844rdadagmg0nshmwfszqu0g';
|
|
120
|
+
/** Address of the fee market module account */
|
|
67
121
|
static moduleAccountAddress = 'cheqd1el68mjnzv87uurqks8u29tec0cj3297047g2dl';
|
|
122
|
+
/** Querier extension setup function for fee market operations */
|
|
68
123
|
static querierExtensionSetup = exports.setupFeemarketExtension;
|
|
124
|
+
/** Querier instance with fee market extension capabilities */
|
|
125
|
+
/** Querier instance with fee market extension capabilities */
|
|
69
126
|
querier;
|
|
127
|
+
/**
|
|
128
|
+
* Constructs a new fee market module instance.
|
|
129
|
+
*
|
|
130
|
+
* @param signer - Signing client for blockchain transactions
|
|
131
|
+
* @param querier - Querier client with fee market extension for data retrieval
|
|
132
|
+
*/
|
|
70
133
|
constructor(signer, querier) {
|
|
71
134
|
super(signer, querier);
|
|
72
135
|
this.querier = querier;
|
|
@@ -80,31 +143,68 @@ class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
|
80
143
|
generateSafeGasPriceWithExponentialBackoff: this.generateSafeGasPriceWithExponentialBackoff.bind(this),
|
|
81
144
|
};
|
|
82
145
|
}
|
|
146
|
+
/**
|
|
147
|
+
* Gets the registry types for fee market message encoding/decoding.
|
|
148
|
+
*
|
|
149
|
+
* @returns Iterable of [typeUrl, GeneratedType] pairs for the registry
|
|
150
|
+
*/
|
|
83
151
|
getRegistryTypes() {
|
|
84
152
|
return FeemarketModule.registryTypes;
|
|
85
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Gets the querier extension setup for fee market operations.
|
|
156
|
+
*
|
|
157
|
+
* @returns Query extension setup function for fee market functionality
|
|
158
|
+
*/
|
|
86
159
|
getQuerierExtensionSetup() {
|
|
87
160
|
return FeemarketModule.querierExtensionSetup;
|
|
88
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Queries the current gas price for a specific denomination.
|
|
164
|
+
* Retrieves live gas price data from the fee market module.
|
|
165
|
+
*
|
|
166
|
+
* @param denom - Token denomination to query gas price for
|
|
167
|
+
* @param context - Optional SDK context for accessing clients
|
|
168
|
+
* @returns Promise resolving to the gas price response
|
|
169
|
+
*/
|
|
89
170
|
async queryGasPrice(denom, context) {
|
|
90
171
|
if (!this.querier)
|
|
91
172
|
this.querier = context.sdk.querier;
|
|
92
173
|
return this.querier[exports.defaultFeemarketExtensionKey].gasPrice(denom);
|
|
93
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* Queries all available gas prices from the fee market.
|
|
177
|
+
* Retrieves comprehensive gas pricing information for all denominations.
|
|
178
|
+
*
|
|
179
|
+
* @param context - Optional SDK context for accessing clients
|
|
180
|
+
* @returns Promise resolving to the gas prices response
|
|
181
|
+
*/
|
|
94
182
|
async queryGasPrices(context) {
|
|
95
183
|
if (!this.querier)
|
|
96
184
|
this.querier = context.sdk.querier;
|
|
97
185
|
return this.querier[exports.defaultFeemarketExtensionKey].gasPrices();
|
|
98
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* Queries the fee market module parameters.
|
|
189
|
+
* Retrieves configuration settings for the fee market functionality.
|
|
190
|
+
*
|
|
191
|
+
* @param context - Optional SDK context for accessing clients
|
|
192
|
+
* @returns Promise resolving to the parameters response
|
|
193
|
+
*/
|
|
99
194
|
async queryParams(context) {
|
|
100
195
|
if (!this.querier)
|
|
101
196
|
this.querier = context.sdk.querier;
|
|
102
197
|
return this.querier[exports.defaultFeemarketExtensionKey].params();
|
|
103
198
|
}
|
|
104
199
|
/**
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
200
|
+
* Generates gas price for a denomination by live polling the fee market.
|
|
201
|
+
* Queries current gas prices and adjusts them using the gas offset factor.
|
|
202
|
+
* Throws an error if live polling fails.
|
|
203
|
+
*
|
|
204
|
+
* @param denom - Token denomination to generate gas price for
|
|
205
|
+
* @param context - Optional SDK context for accessing clients
|
|
206
|
+
* @returns Promise resolving to the calculated gas price
|
|
207
|
+
* @throws Error if live poll for gas price fails or returns invalid data
|
|
108
208
|
*/
|
|
109
209
|
async generateGasPrice(denom, context) {
|
|
110
210
|
if (!this.querier)
|
|
@@ -122,10 +222,13 @@ class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
|
122
222
|
return stargate_cjs_1.GasPrice.fromString(`${adjustedGasPrice}${gasPrice.price.denom}`);
|
|
123
223
|
}
|
|
124
224
|
/**
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
* @
|
|
225
|
+
* Generates offline gas price for a denomination using static tier pricing.
|
|
226
|
+
* Uses predefined gas prices as fallback when live polling is unavailable.
|
|
227
|
+
*
|
|
228
|
+
* @param denom - Token denomination to generate gas price for
|
|
229
|
+
* @param tier - Priority tier for gas price calculation (defaults to Low)
|
|
230
|
+
* @returns Promise resolving to the static gas price
|
|
231
|
+
* @throws Error if denomination or tier is invalid
|
|
129
232
|
*/
|
|
130
233
|
async generateOfflineGasPrice(denom, tier = exports.defaultGasPriceTiers.Low) {
|
|
131
234
|
// validate denom against default
|
|
@@ -140,10 +243,13 @@ class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
|
140
243
|
return stargate_cjs_1.GasPrice.fromString(`${gasPrice.amount}${gasPrice.denom}`);
|
|
141
244
|
}
|
|
142
245
|
/**
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
* @
|
|
246
|
+
* Generates safe gas price with automatic fallback to offline pricing.
|
|
247
|
+
* Attempts live polling first, falls back to static tier pricing if it fails.
|
|
248
|
+
*
|
|
249
|
+
* @param denom - Token denomination to generate gas price for
|
|
250
|
+
* @param tier - Priority tier for fallback gas price calculation (defaults to Low)
|
|
251
|
+
* @param context - Optional SDK context for accessing clients
|
|
252
|
+
* @returns Promise resolving to the gas price (live or fallback)
|
|
147
253
|
*/
|
|
148
254
|
async generateSafeGasPrice(denom, tier = exports.defaultGasPriceTiers.Low, context) {
|
|
149
255
|
if (!this.querier)
|
|
@@ -158,11 +264,14 @@ class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
|
158
264
|
}
|
|
159
265
|
}
|
|
160
266
|
/**
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
*
|
|
164
|
-
* @param
|
|
165
|
-
* @
|
|
267
|
+
* Generates safe gas price with exponential backoff retry mechanism.
|
|
268
|
+
* Retries live polling with exponential backoff before falling back to offline pricing.
|
|
269
|
+
*
|
|
270
|
+
* @param denom - Token denomination to generate gas price for
|
|
271
|
+
* @param tier - Priority tier for fallback gas price calculation (defaults to Low)
|
|
272
|
+
* @param backoffOptions - Retry configuration options (defaults to DefaultBackoffOptions)
|
|
273
|
+
* @param context - Optional SDK context for accessing clients
|
|
274
|
+
* @returns Promise resolving to the gas price (live with retries or fallback)
|
|
166
275
|
*/
|
|
167
276
|
async generateSafeGasPriceWithExponentialBackoff(denom, tier = exports.defaultGasPriceTiers.Low, backoffOptions = utils_1.DefaultBackoffOptions, context) {
|
|
168
277
|
if (!this.querier)
|
|
@@ -176,11 +285,13 @@ class FeemarketModule extends _1.AbstractCheqdSDKModule {
|
|
|
176
285
|
return await this.generateOfflineGasPrice(denom, tier);
|
|
177
286
|
}
|
|
178
287
|
/**
|
|
179
|
-
*
|
|
180
|
-
*
|
|
181
|
-
*
|
|
182
|
-
* @param
|
|
183
|
-
* @
|
|
288
|
+
* Generates transaction fees from a given gas price.
|
|
289
|
+
* Calculates the total fee amount based on gas price and gas limit.
|
|
290
|
+
*
|
|
291
|
+
* @param gasPrice - Gas price to use for fee calculation
|
|
292
|
+
* @param payer - Address of the account paying the transaction fees
|
|
293
|
+
* @param gas - Gas limit for the transaction (defaults to '200000')
|
|
294
|
+
* @returns Standard fee configuration for the transaction
|
|
184
295
|
*/
|
|
185
296
|
static generateFeesFromGasPrice(gasPrice, payer, gas = '200000') {
|
|
186
297
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feemarket.js","sourceRoot":"","sources":["../../../cjs/src/modules/feemarket.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"feemarket.js","sourceRoot":"","sources":["../../../cjs/src/modules/feemarket.ts"],"names":[],"mappings":"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"}
|