viem 1.2.10 → 1.2.11
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/dist/cjs/chains/formatters/celo.js +2 -2
- package/dist/cjs/chains/formatters/celo.js.map +1 -1
- package/dist/cjs/chains/formatters/optimism.js +2 -2
- package/dist/cjs/chains/formatters/optimism.js.map +1 -1
- package/dist/cjs/chains/index.js +8 -8
- package/dist/cjs/chains/serializers/celo.js +12 -13
- package/dist/cjs/chains/serializers/celo.js.map +1 -1
- package/dist/cjs/clients/createClient.js +19 -12
- package/dist/cjs/clients/createClient.js.map +1 -1
- package/dist/cjs/clients/createPublicClient.js +6 -7
- package/dist/cjs/clients/createPublicClient.js.map +1 -1
- package/dist/cjs/clients/createTestClient.js +9 -9
- package/dist/cjs/clients/createTestClient.js.map +1 -1
- package/dist/cjs/clients/createWalletClient.js +6 -6
- package/dist/cjs/clients/createWalletClient.js.map +1 -1
- package/dist/cjs/clients/decorators/public.js +44 -42
- package/dist/cjs/clients/decorators/public.js.map +1 -1
- package/dist/cjs/clients/decorators/wallet.js +17 -15
- package/dist/cjs/clients/decorators/wallet.js.map +1 -1
- package/dist/esm/chains/formatters/celo.js +1 -1
- package/dist/esm/chains/formatters/celo.js.map +1 -1
- package/dist/esm/chains/formatters/optimism.js +1 -1
- package/dist/esm/chains/formatters/optimism.js.map +1 -1
- package/dist/esm/chains/index.js +11 -11
- package/dist/esm/chains/serializers/celo.js +13 -14
- package/dist/esm/chains/serializers/celo.js.map +1 -1
- package/dist/esm/clients/createClient.js +19 -15
- package/dist/esm/clients/createClient.js.map +1 -1
- package/dist/esm/clients/createPublicClient.js +6 -26
- package/dist/esm/clients/createPublicClient.js.map +1 -1
- package/dist/esm/clients/createTestClient.js +9 -32
- package/dist/esm/clients/createTestClient.js.map +1 -1
- package/dist/esm/clients/createWalletClient.js +6 -42
- package/dist/esm/clients/createWalletClient.js.map +1 -1
- package/dist/esm/clients/decorators/public.js +44 -42
- package/dist/esm/clients/decorators/public.js.map +1 -1
- package/dist/esm/clients/decorators/wallet.js +17 -15
- package/dist/esm/clients/decorators/wallet.js.map +1 -1
- package/dist/types/chains/formatters/celo.d.ts +2 -2
- package/dist/types/chains/formatters/celo.d.ts.map +1 -1
- package/dist/types/chains/formatters/optimism.d.ts +9 -9
- package/dist/types/chains/formatters/optimism.d.ts.map +1 -1
- package/dist/types/chains/serializers/celo.d.ts +3 -4
- package/dist/types/chains/serializers/celo.d.ts.map +1 -1
- package/dist/types/clients/createClient.d.ts +29 -32
- package/dist/types/clients/createClient.d.ts.map +1 -1
- package/dist/types/clients/createPublicClient.d.ts +3 -3
- package/dist/types/clients/createPublicClient.d.ts.map +1 -1
- package/dist/types/clients/createTestClient.d.ts +9 -7
- package/dist/types/clients/createTestClient.d.ts.map +1 -1
- package/dist/types/clients/createWalletClient.d.ts +3 -3
- package/dist/types/clients/createWalletClient.d.ts.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +1 -519
- package/dist/types/clients/decorators/public.d.ts.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +1 -519
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
- package/dist/types/types/chain.d.ts +3 -4
- package/dist/types/types/chain.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/chains/formatters/celo.ts +8 -7
- package/src/chains/formatters/optimism.ts +14 -14
- package/src/chains/index.ts +11 -11
- package/src/chains/serializers/celo.ts +15 -19
- package/src/clients/createClient.ts +113 -89
- package/src/clients/createPublicClient.ts +26 -26
- package/src/clients/createTestClient.ts +41 -47
- package/src/clients/createWalletClient.ts +30 -33
- package/src/clients/decorators/public.ts +49 -44
- package/src/clients/decorators/wallet.ts +18 -16
- package/src/types/chain.ts +6 -7
@@ -1,49 +1,43 @@
|
|
1
|
-
import type { Address
|
1
|
+
import type { Address } from 'abitype';
|
2
2
|
import type { Account, JsonRpcAccount } from '../accounts/types.js';
|
3
3
|
import type { Chain } from '../types/chain.js';
|
4
4
|
import type { EIP1193RequestFn, EIP1474Methods, RpcSchema } from '../types/eip1193.js';
|
5
5
|
import type { Prettify } from '../types/utils.js';
|
6
6
|
import type { Transport } from './transports/createTransport.js';
|
7
|
-
export type
|
8
|
-
/** The maximum size (in bytes) for each calldata chunk. @default 1_024 */
|
9
|
-
batchSize?: number;
|
10
|
-
/** The maximum number of milliseconds to wait before sending a batch. @default 0 */
|
11
|
-
wait?: number;
|
12
|
-
};
|
13
|
-
export type ClientConfig<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccountOrAddress extends Account | Address | undefined = Account | Address | undefined> = {
|
7
|
+
export type ClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = {
|
14
8
|
/** The Account to use for the Client. This will be used for Actions that require an account as an argument. */
|
15
|
-
account?:
|
9
|
+
account?: accountOrAddress extends Account | Address ? accountOrAddress | Account | Address : Account | Address | undefined;
|
16
10
|
/** Flags for batch settings. */
|
17
11
|
batch?: {
|
18
12
|
/** Toggle to enable `eth_call` multicall aggregation. */
|
19
|
-
multicall?: boolean | MulticallBatchOptions;
|
20
|
-
};
|
13
|
+
multicall?: boolean | Prettify<MulticallBatchOptions> | undefined;
|
14
|
+
} | undefined;
|
21
15
|
/** Chain for the client. */
|
22
|
-
chain?:
|
16
|
+
chain?: chain extends Chain ? chain : Chain | undefined;
|
23
17
|
/** A key for the client. */
|
24
|
-
key?: string;
|
18
|
+
key?: string | undefined;
|
25
19
|
/** A name for the client. */
|
26
|
-
name?: string;
|
20
|
+
name?: string | undefined;
|
27
21
|
/**
|
28
22
|
* Frequency (in ms) for polling enabled actions & events.
|
29
23
|
* @default 4_000
|
30
24
|
*/
|
31
|
-
pollingInterval?: number;
|
25
|
+
pollingInterval?: number | undefined;
|
32
26
|
/** The RPC transport */
|
33
|
-
transport:
|
27
|
+
transport: transport;
|
34
28
|
/** The type of client. */
|
35
|
-
type?: string;
|
29
|
+
type?: string | undefined;
|
36
30
|
};
|
37
|
-
type
|
31
|
+
export type Client<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, rpcSchema extends RpcSchema | undefined = undefined, extended extends Extended | undefined = Extended | undefined> = Prettify<Prettify<Client_Base<transport, chain, account, rpcSchema>> & {
|
32
|
+
extend: <const client extends Extended>(fn: (client: Client<transport, chain, account, rpcSchema, extended>) => client) => Prettify<Client<transport, chain, account, rpcSchema, Prettify<client> & (extended extends Extended ? extended : unknown)>>;
|
33
|
+
} & (extended extends Extended ? extended : unknown)>;
|
34
|
+
type Client_Base<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined, rpcSchema extends RpcSchema | undefined = undefined> = {
|
38
35
|
/** The Account of the Client. */
|
39
|
-
account:
|
36
|
+
account: account;
|
40
37
|
/** Flags for batch settings. */
|
41
|
-
batch?:
|
42
|
-
/** Toggle to enable `eth_call` multicall aggregation. */
|
43
|
-
multicall?: boolean | MulticallBatchOptions;
|
44
|
-
};
|
38
|
+
batch?: ClientConfig['batch'];
|
45
39
|
/** Chain for the client. */
|
46
|
-
chain:
|
40
|
+
chain: chain;
|
47
41
|
/** A key for the client. */
|
48
42
|
key: string;
|
49
43
|
/** A name for the client. */
|
@@ -51,25 +45,28 @@ type Client_Base<TTransport extends Transport = Transport, TChain extends Chain
|
|
51
45
|
/** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */
|
52
46
|
pollingInterval: number;
|
53
47
|
/** Request function wrapped with friendly error handling */
|
54
|
-
request:
|
48
|
+
request: EIP1193RequestFn<rpcSchema extends undefined ? EIP1474Methods : rpcSchema>;
|
55
49
|
/** The RPC transport */
|
56
|
-
transport: ReturnType<
|
50
|
+
transport: ReturnType<transport>['config'] & ReturnType<transport>['value'];
|
57
51
|
/** The type of client. */
|
58
52
|
type: string;
|
59
53
|
/** A unique ID for the client. */
|
60
54
|
uid: string;
|
61
55
|
};
|
62
|
-
type Extended = {
|
56
|
+
type Extended = Prettify<{
|
63
57
|
[K in keyof Client_Base]?: undefined;
|
64
58
|
} & {
|
65
59
|
[key: string]: unknown;
|
60
|
+
}>;
|
61
|
+
export type MulticallBatchOptions = {
|
62
|
+
/** The maximum size (in bytes) for each calldata chunk. @default 1_024 */
|
63
|
+
batchSize?: number | undefined;
|
64
|
+
/** The maximum number of milliseconds to wait before sending a batch. @default 0 */
|
65
|
+
wait?: number | undefined;
|
66
66
|
};
|
67
|
-
export type Client<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TRpcSchema extends RpcSchema | undefined = undefined, TExtended extends Extended | undefined = Extended | undefined> = Client_Base<TTransport, TChain, TAccount, TRpcSchema> & {
|
68
|
-
extend: <TNextExtended extends Extended = Extended>(fn: (client: Client<TTransport, TChain, TAccount, TRpcSchema, TExtended>) => Narrow<TNextExtended>) => Client<TTransport, TChain, TAccount, TRpcSchema, (TExtended extends Extended ? TExtended : {}) & TNextExtended>;
|
69
|
-
} & (TExtended extends Extended ? TExtended : {});
|
70
67
|
/**
|
71
|
-
*
|
68
|
+
* Creates a base client with the given transport.
|
72
69
|
*/
|
73
|
-
export declare function createClient<
|
70
|
+
export declare function createClient<transport extends Transport, chain extends Chain | undefined = undefined, accountOrAddress extends Account | Address | undefined = undefined>(parameters: ClientConfig<transport, chain, accountOrAddress>): Client<transport, chain, accountOrAddress extends Address ? Prettify<JsonRpcAccount<accountOrAddress>> : accountOrAddress>;
|
74
71
|
export {};
|
75
72
|
//# sourceMappingURL=createClient.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"createClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createClient.ts"],"names":[],"mappings":"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"}
|
@@ -4,8 +4,8 @@ import type { Prettify } from '../types/utils.js';
|
|
4
4
|
import { type Client, type ClientConfig } from './createClient.js';
|
5
5
|
import { type PublicActions } from './decorators/public.js';
|
6
6
|
import type { Transport } from './transports/createTransport.js';
|
7
|
-
export type PublicClientConfig<
|
8
|
-
export type PublicClient<
|
7
|
+
export type PublicClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined> = Prettify<Pick<ClientConfig<transport, chain>, 'batch' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
8
|
+
export type PublicClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined> = Prettify<Client<transport, chain, undefined, PublicRpcSchema, PublicActions<transport, chain>>>;
|
9
9
|
/**
|
10
10
|
* Creates a Public Client with a given [Transport](https://viem.sh/docs/clients/intro.html) configured for a [Chain](https://viem.sh/docs/clients/chains.html).
|
11
11
|
*
|
@@ -25,5 +25,5 @@ export type PublicClient<TTransport extends Transport = Transport, TChain extend
|
|
25
25
|
* transport: http(),
|
26
26
|
* })
|
27
27
|
*/
|
28
|
-
export declare function createPublicClient<
|
28
|
+
export declare function createPublicClient<transport extends Transport, chain extends Chain | undefined = undefined>(parameters: PublicClientConfig<transport, chain>): PublicClient<transport, chain>;
|
29
29
|
//# sourceMappingURL=createPublicClient.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createPublicClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,
|
1
|
+
{"version":3,"file":"createPublicClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACjD,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,EAC9B,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,iBAAiB,GAAG,WAAW,CACrE,CACF,CAAA;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,IACjD,QAAQ,CACV,MAAM,CACJ,SAAS,EACT,KAAK,EACL,SAAS,EACT,eAAe,EACf,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAChC,CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAE3C,UAAU,EAAE,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,GAC/C,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA"}
|
@@ -2,18 +2,19 @@ import type { Account } from '../accounts/types.js';
|
|
2
2
|
import type { ParseAccount } from '../types/account.js';
|
3
3
|
import type { Chain } from '../types/chain.js';
|
4
4
|
import type { TestRpcSchema } from '../types/eip1193.js';
|
5
|
+
import type { Prettify } from '../types/utils.js';
|
5
6
|
import { type Client, type ClientConfig } from './createClient.js';
|
6
7
|
import { type TestActions } from './decorators/test.js';
|
7
8
|
import type { Transport } from './transports/createTransport.js';
|
8
9
|
import type { Address } from 'abitype';
|
9
10
|
export type TestClientMode = 'anvil' | 'hardhat' | 'ganache';
|
10
|
-
export type TestClientConfig<
|
11
|
-
/** Mode of the test client.
|
11
|
+
export type TestClientConfig<mode extends TestClientMode = TestClientMode, transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'> & {
|
12
|
+
/** Mode of the test client. */
|
13
|
+
mode: mode | ('anvil' | 'hardhat' | 'ganache');
|
14
|
+
}>;
|
15
|
+
export type TestClient<TMode extends TestClientMode = TestClientMode, transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TIncludeActions extends boolean = true> = Prettify<{
|
12
16
|
mode: TMode;
|
13
|
-
}
|
14
|
-
export type TestClient<TMode extends TestClientMode = TestClientMode, TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TIncludeActions extends boolean = true> = Client<TTransport, TChain, TAccount, TestRpcSchema<TMode>, TIncludeActions extends true ? TestActions : Record<string, unknown>> & {
|
15
|
-
mode: TMode;
|
16
|
-
};
|
17
|
+
} & Client<transport, chain, TAccount, TestRpcSchema<TMode>, TIncludeActions extends true ? TestActions : Record<string, unknown>>>;
|
17
18
|
/**
|
18
19
|
* @description Creates a test client with a given transport.
|
19
20
|
*/
|
@@ -37,5 +38,6 @@ export type TestClient<TMode extends TestClientMode = TestClientMode, TTransport
|
|
37
38
|
* transport: http(),
|
38
39
|
* })
|
39
40
|
*/
|
40
|
-
export declare function createTestClient<
|
41
|
+
export declare function createTestClient<mode extends 'anvil' | 'hardhat' | 'ganache', // TODO: Type utility that expands `TestClientMode`
|
42
|
+
transport extends Transport, chain extends Chain | undefined = undefined, accountOrAddress extends Account | Address | undefined = undefined>(parameters: TestClientConfig<mode, transport, chain, accountOrAddress>): TestClient<mode, transport, chain, ParseAccount<accountOrAddress>>;
|
41
43
|
//# sourceMappingURL=createTestClient.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createTestClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAE5D,MAAM,MAAM,gBAAgB,CAC1B,
|
1
|
+
{"version":3,"file":"createTestClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createTestClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAE5D,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,cAAc,GAAG,cAAc,EAC5C,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAChD,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,iBAAiB,GAAG,WAAW,CACvE,GAAG;IACF,+BAA+B;IAC/B,IAAI,EAAE,IAAI,GAAG,CAAC,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC,CAAA;CAC/C,CACF,CAAA;AAED,MAAM,MAAM,UAAU,CACpB,KAAK,SAAS,cAAc,GAAG,cAAc,EAC7C,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,eAAe,SAAS,OAAO,GAAG,IAAI,IACpC,QAAQ,CACV;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG,MAAM,CACtB,SAAS,EACT,KAAK,EACL,QAAQ,EACR,aAAa,CAAC,KAAK,CAAC,EACpB,eAAe,SAAS,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACrE,CACF,CAAA;AAED;;GAEG;AACH;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAAE,mDAAmD;AACjG,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAC3C,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,EAElE,UAAU,EAAE,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,GACrE,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAA"}
|
@@ -7,8 +7,8 @@ import type { Prettify } from '../types/utils.js';
|
|
7
7
|
import { type Client, type ClientConfig } from './createClient.js';
|
8
8
|
import { type WalletActions } from './decorators/wallet.js';
|
9
9
|
import type { Transport } from './transports/createTransport.js';
|
10
|
-
export type WalletClientConfig<
|
11
|
-
export type WalletClient<
|
10
|
+
export type WalletClientConfig<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, accountOrAddress extends Account | Address | undefined = Account | Address | undefined> = Prettify<Pick<ClientConfig<transport, chain, accountOrAddress>, 'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'>>;
|
11
|
+
export type WalletClient<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined> = Prettify<Client<transport, chain, account, WalletRpcSchema, WalletActions<chain, account>>>;
|
12
12
|
/**
|
13
13
|
* Creates a Wallet Client with a given [Transport](https://viem.sh/docs/clients/intro.html) configured for a [Chain](https://viem.sh/docs/clients/chains.html).
|
14
14
|
*
|
@@ -45,5 +45,5 @@ export type WalletClient<TTransport extends Transport = Transport, TChain extend
|
|
45
45
|
* transport: http(),
|
46
46
|
* })
|
47
47
|
*/
|
48
|
-
export declare function createWalletClient<
|
48
|
+
export declare function createWalletClient<transport extends Transport, chain extends Chain | undefined = undefined, accountOrAddress extends Account | Address | undefined = undefined>(parameters: WalletClientConfig<transport, chain, accountOrAddress>): WalletClient<transport, chain, ParseAccount<accountOrAddress>>;
|
49
49
|
//# sourceMappingURL=createWalletClient.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createWalletClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,
|
1
|
+
{"version":3,"file":"createWalletClient.d.ts","sourceRoot":"","sources":["../../../src/clients/createWalletClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,YAAY,EAAgB,MAAM,mBAAmB,CAAA;AAChF,OAAO,EAAE,KAAK,aAAa,EAAiB,MAAM,wBAAwB,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAClD,OAAO,GACP,OAAO,GACP,SAAS,IACX,QAAQ,CACV,IAAI,CACF,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAChD,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,iBAAiB,GAAG,WAAW,CACvE,CACF,CAAA;AAED,MAAM,MAAM,YAAY,CACtB,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD,QAAQ,CACV,MAAM,CACJ,SAAS,EACT,KAAK,EACL,OAAO,EACP,eAAe,EACf,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAC9B,CACF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAC3C,gBAAgB,SAAS,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,EAElE,UAAU,EAAE,kBAAkB,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,GACjE,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAA"}
|