11import { JsonRpcError , EthereumProviderError } from './classes' ;
22import { errorCodes } from './error-constants' ;
3- import { OptionalDataWithOptionalCause , getMessageFromCode } from './utils' ;
3+ import type { OptionalDataWithOptionalCause } from './utils' ;
4+ import { getMessageFromCode } from './utils' ;
45
5- type EthereumErrorOptions < T extends OptionalDataWithOptionalCause > = {
6+ type EthereumErrorOptions < Data extends OptionalDataWithOptionalCause > = {
67 message ?: string ;
7- data ?: T ;
8+ data ?: Data ;
89} ;
910
10- type ServerErrorOptions < T extends OptionalDataWithOptionalCause > = {
11+ type ServerErrorOptions < Data extends OptionalDataWithOptionalCause > = {
1112 code : number ;
12- } & EthereumErrorOptions < T > ;
13+ } & EthereumErrorOptions < Data > ;
1314
14- type CustomErrorArg < T extends OptionalDataWithOptionalCause > =
15- ServerErrorOptions < T > ;
15+ type CustomErrorArg < Data extends OptionalDataWithOptionalCause > =
16+ ServerErrorOptions < Data > ;
1617
17- type JsonRpcErrorsArg < T extends OptionalDataWithOptionalCause > =
18- | EthereumErrorOptions < T >
18+ type JsonRpcErrorsArg < Data extends OptionalDataWithOptionalCause > =
19+ | EthereumErrorOptions < Data >
1920 | string ;
2021
2122export const rpcErrors = {
@@ -25,17 +26,18 @@ export const rpcErrors = {
2526 * @param arg - The error message or options bag.
2627 * @returns An instance of the {@link JsonRpcError} class.
2728 */
28- parse : < T extends OptionalDataWithOptionalCause > ( arg ?: JsonRpcErrorsArg < T > ) =>
29- getJsonRpcError ( errorCodes . rpc . parse , arg ) ,
29+ parse : < Data extends OptionalDataWithOptionalCause > (
30+ arg ?: JsonRpcErrorsArg < Data > ,
31+ ) => getJsonRpcError ( errorCodes . rpc . parse , arg ) ,
3032
3133 /**
3234 * Get a JSON RPC 2.0 Invalid Request (-32600) error.
3335 *
3436 * @param arg - The error message or options bag.
3537 * @returns An instance of the {@link JsonRpcError} class.
3638 */
37- invalidRequest : < T extends OptionalDataWithOptionalCause > (
38- arg ?: JsonRpcErrorsArg < T > ,
39+ invalidRequest : < Data extends OptionalDataWithOptionalCause > (
40+ arg ?: JsonRpcErrorsArg < Data > ,
3941 ) => getJsonRpcError ( errorCodes . rpc . invalidRequest , arg ) ,
4042
4143 /**
@@ -44,8 +46,8 @@ export const rpcErrors = {
4446 * @param arg - The error message or options bag.
4547 * @returns An instance of the {@link JsonRpcError} class.
4648 */
47- invalidParams : < T extends OptionalDataWithOptionalCause > (
48- arg ?: JsonRpcErrorsArg < T > ,
49+ invalidParams : < Data extends OptionalDataWithOptionalCause > (
50+ arg ?: JsonRpcErrorsArg < Data > ,
4951 ) => getJsonRpcError ( errorCodes . rpc . invalidParams , arg ) ,
5052
5153 /**
@@ -54,8 +56,8 @@ export const rpcErrors = {
5456 * @param arg - The error message or options bag.
5557 * @returns An instance of the {@link JsonRpcError} class.
5658 */
57- methodNotFound : < T extends OptionalDataWithOptionalCause > (
58- arg ?: JsonRpcErrorsArg < T > ,
59+ methodNotFound : < Data extends OptionalDataWithOptionalCause > (
60+ arg ?: JsonRpcErrorsArg < Data > ,
5961 ) => getJsonRpcError ( errorCodes . rpc . methodNotFound , arg ) ,
6062
6163 /**
@@ -64,8 +66,8 @@ export const rpcErrors = {
6466 * @param arg - The error message or options bag.
6567 * @returns An instance of the {@link JsonRpcError} class.
6668 */
67- internal : < T extends OptionalDataWithOptionalCause > (
68- arg ?: JsonRpcErrorsArg < T > ,
69+ internal : < Data extends OptionalDataWithOptionalCause > (
70+ arg ?: JsonRpcErrorsArg < Data > ,
6971 ) => getJsonRpcError ( errorCodes . rpc . internal , arg ) ,
7072
7173 /**
@@ -76,8 +78,8 @@ export const rpcErrors = {
7678 * @param opts - The error options bag.
7779 * @returns An instance of the {@link JsonRpcError} class.
7880 */
79- server : < T extends OptionalDataWithOptionalCause > (
80- opts : ServerErrorOptions < T > ,
81+ server : < Data extends OptionalDataWithOptionalCause > (
82+ opts : ServerErrorOptions < Data > ,
8183 ) => {
8284 if ( ! opts || typeof opts !== 'object' || Array . isArray ( opts ) ) {
8385 throw new Error (
@@ -99,8 +101,8 @@ export const rpcErrors = {
99101 * @param arg - The error message or options bag.
100102 * @returns An instance of the {@link JsonRpcError} class.
101103 */
102- invalidInput : < T extends OptionalDataWithOptionalCause > (
103- arg ?: JsonRpcErrorsArg < T > ,
104+ invalidInput : < Data extends OptionalDataWithOptionalCause > (
105+ arg ?: JsonRpcErrorsArg < Data > ,
104106 ) => getJsonRpcError ( errorCodes . rpc . invalidInput , arg ) ,
105107
106108 /**
@@ -109,8 +111,8 @@ export const rpcErrors = {
109111 * @param arg - The error message or options bag.
110112 * @returns An instance of the {@link JsonRpcError} class.
111113 */
112- resourceNotFound : < T extends OptionalDataWithOptionalCause > (
113- arg ?: JsonRpcErrorsArg < T > ,
114+ resourceNotFound : < Data extends OptionalDataWithOptionalCause > (
115+ arg ?: JsonRpcErrorsArg < Data > ,
114116 ) => getJsonRpcError ( errorCodes . rpc . resourceNotFound , arg ) ,
115117
116118 /**
@@ -119,8 +121,8 @@ export const rpcErrors = {
119121 * @param arg - The error message or options bag.
120122 * @returns An instance of the {@link JsonRpcError} class.
121123 */
122- resourceUnavailable : < T extends OptionalDataWithOptionalCause > (
123- arg ?: JsonRpcErrorsArg < T > ,
124+ resourceUnavailable : < Data extends OptionalDataWithOptionalCause > (
125+ arg ?: JsonRpcErrorsArg < Data > ,
124126 ) => getJsonRpcError ( errorCodes . rpc . resourceUnavailable , arg ) ,
125127
126128 /**
@@ -129,8 +131,8 @@ export const rpcErrors = {
129131 * @param arg - The error message or options bag.
130132 * @returns An instance of the {@link JsonRpcError} class.
131133 */
132- transactionRejected : < T extends OptionalDataWithOptionalCause > (
133- arg ?: JsonRpcErrorsArg < T > ,
134+ transactionRejected : < Data extends OptionalDataWithOptionalCause > (
135+ arg ?: JsonRpcErrorsArg < Data > ,
134136 ) => getJsonRpcError ( errorCodes . rpc . transactionRejected , arg ) ,
135137
136138 /**
@@ -139,8 +141,8 @@ export const rpcErrors = {
139141 * @param arg - The error message or options bag.
140142 * @returns An instance of the {@link JsonRpcError} class.
141143 */
142- methodNotSupported : < T extends OptionalDataWithOptionalCause > (
143- arg ?: JsonRpcErrorsArg < T > ,
144+ methodNotSupported : < Data extends OptionalDataWithOptionalCause > (
145+ arg ?: JsonRpcErrorsArg < Data > ,
144146 ) => getJsonRpcError ( errorCodes . rpc . methodNotSupported , arg ) ,
145147
146148 /**
@@ -149,8 +151,8 @@ export const rpcErrors = {
149151 * @param arg - The error message or options bag.
150152 * @returns An instance of the {@link JsonRpcError} class.
151153 */
152- limitExceeded : < T extends OptionalDataWithOptionalCause > (
153- arg ?: JsonRpcErrorsArg < T > ,
154+ limitExceeded : < Data extends OptionalDataWithOptionalCause > (
155+ arg ?: JsonRpcErrorsArg < Data > ,
154156 ) => getJsonRpcError ( errorCodes . rpc . limitExceeded , arg ) ,
155157} ;
156158
@@ -161,8 +163,8 @@ export const providerErrors = {
161163 * @param arg - The error message or options bag.
162164 * @returns An instance of the {@link EthereumProviderError} class.
163165 */
164- userRejectedRequest : < T extends OptionalDataWithOptionalCause > (
165- arg ?: JsonRpcErrorsArg < T > ,
166+ userRejectedRequest : < Data extends OptionalDataWithOptionalCause > (
167+ arg ?: JsonRpcErrorsArg < Data > ,
166168 ) => {
167169 return getEthProviderError ( errorCodes . provider . userRejectedRequest , arg ) ;
168170 } ,
@@ -173,8 +175,8 @@ export const providerErrors = {
173175 * @param arg - The error message or options bag.
174176 * @returns An instance of the {@link EthereumProviderError} class.
175177 */
176- unauthorized : < T extends OptionalDataWithOptionalCause > (
177- arg ?: JsonRpcErrorsArg < T > ,
178+ unauthorized : < Data extends OptionalDataWithOptionalCause > (
179+ arg ?: JsonRpcErrorsArg < Data > ,
178180 ) => {
179181 return getEthProviderError ( errorCodes . provider . unauthorized , arg ) ;
180182 } ,
@@ -185,8 +187,8 @@ export const providerErrors = {
185187 * @param arg - The error message or options bag.
186188 * @returns An instance of the {@link EthereumProviderError} class.
187189 */
188- unsupportedMethod : < T extends OptionalDataWithOptionalCause > (
189- arg ?: JsonRpcErrorsArg < T > ,
190+ unsupportedMethod : < Data extends OptionalDataWithOptionalCause > (
191+ arg ?: JsonRpcErrorsArg < Data > ,
190192 ) => {
191193 return getEthProviderError ( errorCodes . provider . unsupportedMethod , arg ) ;
192194 } ,
@@ -197,8 +199,8 @@ export const providerErrors = {
197199 * @param arg - The error message or options bag.
198200 * @returns An instance of the {@link EthereumProviderError} class.
199201 */
200- disconnected : < T extends OptionalDataWithOptionalCause > (
201- arg ?: JsonRpcErrorsArg < T > ,
202+ disconnected : < Data extends OptionalDataWithOptionalCause > (
203+ arg ?: JsonRpcErrorsArg < Data > ,
202204 ) => {
203205 return getEthProviderError ( errorCodes . provider . disconnected , arg ) ;
204206 } ,
@@ -209,8 +211,8 @@ export const providerErrors = {
209211 * @param arg - The error message or options bag.
210212 * @returns An instance of the {@link EthereumProviderError} class.
211213 */
212- chainDisconnected : < T extends OptionalDataWithOptionalCause > (
213- arg ?: JsonRpcErrorsArg < T > ,
214+ chainDisconnected : < Data extends OptionalDataWithOptionalCause > (
215+ arg ?: JsonRpcErrorsArg < Data > ,
214216 ) => {
215217 return getEthProviderError ( errorCodes . provider . chainDisconnected , arg ) ;
216218 } ,
@@ -221,8 +223,8 @@ export const providerErrors = {
221223 * @param opts - The error options bag.
222224 * @returns An instance of the {@link EthereumProviderError} class.
223225 */
224- custom : < T extends OptionalDataWithOptionalCause > (
225- opts : CustomErrorArg < T > ,
226+ custom : < Data extends OptionalDataWithOptionalCause > (
227+ opts : CustomErrorArg < Data > ,
226228 ) => {
227229 if ( ! opts || typeof opts !== 'object' || Array . isArray ( opts ) ) {
228230 throw new Error (
@@ -246,10 +248,10 @@ export const providerErrors = {
246248 * @param arg - The error message or options bag.
247249 * @returns An instance of the {@link JsonRpcError} class.
248250 */
249- function getJsonRpcError < T extends OptionalDataWithOptionalCause > (
251+ function getJsonRpcError < Data extends OptionalDataWithOptionalCause > (
250252 code : number ,
251- arg ?: JsonRpcErrorsArg < T > ,
252- ) : JsonRpcError < T > {
253+ arg ?: JsonRpcErrorsArg < Data > ,
254+ ) : JsonRpcError < Data > {
253255 const [ message , data ] = parseOpts ( arg ) ;
254256 return new JsonRpcError ( code , message ?? getMessageFromCode ( code ) , data ) ;
255257}
@@ -261,10 +263,10 @@ function getJsonRpcError<T extends OptionalDataWithOptionalCause>(
261263 * @param arg - The error message or options bag.
262264 * @returns An instance of the {@link EthereumProviderError} class.
263265 */
264- function getEthProviderError < T extends OptionalDataWithOptionalCause > (
266+ function getEthProviderError < Data extends OptionalDataWithOptionalCause > (
265267 code : number ,
266- arg ?: JsonRpcErrorsArg < T > ,
267- ) : EthereumProviderError < T > {
268+ arg ?: JsonRpcErrorsArg < Data > ,
269+ ) : EthereumProviderError < Data > {
268270 const [ message , data ] = parseOpts ( arg ) ;
269271 return new EthereumProviderError (
270272 code ,
@@ -279,9 +281,9 @@ function getEthProviderError<T extends OptionalDataWithOptionalCause>(
279281 * @param arg - The error message or options bag.
280282 * @returns A tuple containing the error message and optional data.
281283 */
282- function parseOpts < T extends OptionalDataWithOptionalCause > (
283- arg ?: JsonRpcErrorsArg < T > ,
284- ) : [ message ?: string | undefined , data ?: T | undefined ] {
284+ function parseOpts < Data extends OptionalDataWithOptionalCause > (
285+ arg ?: JsonRpcErrorsArg < Data > ,
286+ ) : [ message ?: string | undefined , data ?: Data | undefined ] {
285287 if ( arg ) {
286288 if ( typeof arg === 'string' ) {
287289 return [ arg ] ;
0 commit comments