@layerzerolabs/onesig-evm 0.0.3 → 0.0.5

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.
Files changed (32) hide show
  1. package/contracts/MultiSig.sol +219 -0
  2. package/contracts/OneSig.sol +258 -0
  3. package/contracts/mocks/MockOApp.sol +13 -0
  4. package/dist/index.d.ts +12 -0
  5. package/dist/index.js +54 -0
  6. package/package.json +7 -12
  7. package/typechain-types/@openzeppelin/contracts/index.ts +5 -0
  8. package/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.ts +55 -0
  9. package/typechain-types/@openzeppelin/contracts/utils/cryptography/MerkleProof.ts +55 -0
  10. package/typechain-types/@openzeppelin/contracts/utils/cryptography/index.ts +5 -0
  11. package/typechain-types/@openzeppelin/contracts/utils/index.ts +5 -0
  12. package/typechain-types/@openzeppelin/index.ts +5 -0
  13. package/typechain-types/common.ts +46 -0
  14. package/typechain-types/contracts/MultiSig.ts +358 -0
  15. package/typechain-types/contracts/OneSig.ts +687 -0
  16. package/typechain-types/contracts/index.ts +7 -0
  17. package/typechain-types/contracts/mocks/MockOApp.ts +144 -0
  18. package/typechain-types/contracts/mocks/index.ts +4 -0
  19. package/typechain-types/factories/@openzeppelin/contracts/index.ts +4 -0
  20. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.ts +87 -0
  21. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/MerkleProof__factory.ts +68 -0
  22. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.ts +5 -0
  23. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +4 -0
  24. package/typechain-types/factories/@openzeppelin/index.ts +4 -0
  25. package/typechain-types/factories/contracts/MultiSig__factory.ts +275 -0
  26. package/typechain-types/factories/contracts/OneSig__factory.ts +653 -0
  27. package/typechain-types/factories/contracts/index.ts +6 -0
  28. package/typechain-types/factories/contracts/mocks/MockOApp__factory.ts +104 -0
  29. package/typechain-types/factories/contracts/mocks/index.ts +4 -0
  30. package/typechain-types/factories/index.ts +5 -0
  31. package/typechain-types/hardhat.d.ts +78 -0
  32. package/typechain-types/index.ts +18 -0
@@ -0,0 +1,55 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type { BaseContract, Signer, utils } from "ethers";
5
+
6
+ import type { Listener, Provider } from "@ethersproject/providers";
7
+ import type {
8
+ TypedEventFilter,
9
+ TypedEvent,
10
+ TypedListener,
11
+ OnEvent,
12
+ } from "../../../../common";
13
+
14
+ export interface ECDSAInterface extends utils.Interface {
15
+ functions: {};
16
+
17
+ events: {};
18
+ }
19
+
20
+ export interface ECDSA extends BaseContract {
21
+ connect(signerOrProvider: Signer | Provider | string): this;
22
+ attach(addressOrName: string): this;
23
+ deployed(): Promise<this>;
24
+
25
+ interface: ECDSAInterface;
26
+
27
+ queryFilter<TEvent extends TypedEvent>(
28
+ event: TypedEventFilter<TEvent>,
29
+ fromBlockOrBlockhash?: string | number | undefined,
30
+ toBlock?: string | number | undefined
31
+ ): Promise<Array<TEvent>>;
32
+
33
+ listeners<TEvent extends TypedEvent>(
34
+ eventFilter?: TypedEventFilter<TEvent>
35
+ ): Array<TypedListener<TEvent>>;
36
+ listeners(eventName?: string): Array<Listener>;
37
+ removeAllListeners<TEvent extends TypedEvent>(
38
+ eventFilter: TypedEventFilter<TEvent>
39
+ ): this;
40
+ removeAllListeners(eventName?: string): this;
41
+ off: OnEvent<this>;
42
+ on: OnEvent<this>;
43
+ once: OnEvent<this>;
44
+ removeListener: OnEvent<this>;
45
+
46
+ functions: {};
47
+
48
+ callStatic: {};
49
+
50
+ filters: {};
51
+
52
+ estimateGas: {};
53
+
54
+ populateTransaction: {};
55
+ }
@@ -0,0 +1,55 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type { BaseContract, Signer, utils } from "ethers";
5
+
6
+ import type { Listener, Provider } from "@ethersproject/providers";
7
+ import type {
8
+ TypedEventFilter,
9
+ TypedEvent,
10
+ TypedListener,
11
+ OnEvent,
12
+ } from "../../../../common";
13
+
14
+ export interface MerkleProofInterface extends utils.Interface {
15
+ functions: {};
16
+
17
+ events: {};
18
+ }
19
+
20
+ export interface MerkleProof extends BaseContract {
21
+ connect(signerOrProvider: Signer | Provider | string): this;
22
+ attach(addressOrName: string): this;
23
+ deployed(): Promise<this>;
24
+
25
+ interface: MerkleProofInterface;
26
+
27
+ queryFilter<TEvent extends TypedEvent>(
28
+ event: TypedEventFilter<TEvent>,
29
+ fromBlockOrBlockhash?: string | number | undefined,
30
+ toBlock?: string | number | undefined
31
+ ): Promise<Array<TEvent>>;
32
+
33
+ listeners<TEvent extends TypedEvent>(
34
+ eventFilter?: TypedEventFilter<TEvent>
35
+ ): Array<TypedListener<TEvent>>;
36
+ listeners(eventName?: string): Array<Listener>;
37
+ removeAllListeners<TEvent extends TypedEvent>(
38
+ eventFilter: TypedEventFilter<TEvent>
39
+ ): this;
40
+ removeAllListeners(eventName?: string): this;
41
+ off: OnEvent<this>;
42
+ on: OnEvent<this>;
43
+ once: OnEvent<this>;
44
+ removeListener: OnEvent<this>;
45
+
46
+ functions: {};
47
+
48
+ callStatic: {};
49
+
50
+ filters: {};
51
+
52
+ estimateGas: {};
53
+
54
+ populateTransaction: {};
55
+ }
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { ECDSA } from "./ECDSA";
5
+ export type { MerkleProof } from "./MerkleProof";
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type * as cryptography from "./cryptography";
5
+ export type { cryptography };
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type * as contracts from "./contracts";
5
+ export type { contracts };
@@ -0,0 +1,46 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type { Listener } from "@ethersproject/providers";
5
+ import type { Event, EventFilter } from "ethers";
6
+
7
+ export interface TypedEvent<
8
+ TArgsArray extends Array<any> = any,
9
+ TArgsObject = any
10
+ > extends Event {
11
+ args: TArgsArray & TArgsObject;
12
+ }
13
+
14
+ export interface TypedEventFilter<_TEvent extends TypedEvent>
15
+ extends EventFilter {}
16
+
17
+ export interface TypedListener<TEvent extends TypedEvent> {
18
+ (...listenerArg: [...__TypechainArgsArray<TEvent>, TEvent]): void;
19
+ }
20
+
21
+ type __TypechainArgsArray<T> = T extends TypedEvent<infer U> ? U : never;
22
+
23
+ export interface OnEvent<TRes> {
24
+ <TEvent extends TypedEvent>(
25
+ eventFilter: TypedEventFilter<TEvent>,
26
+ listener: TypedListener<TEvent>
27
+ ): TRes;
28
+ (eventName: string, listener: Listener): TRes;
29
+ }
30
+
31
+ export type MinEthersFactory<C, ARGS> = {
32
+ deploy(...a: ARGS[]): Promise<C>;
33
+ };
34
+
35
+ export type GetContractTypeFromFactory<F> = F extends MinEthersFactory<
36
+ infer C,
37
+ any
38
+ >
39
+ ? C
40
+ : never;
41
+
42
+ export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any>
43
+ ? Parameters<F["deploy"]>
44
+ : never;
45
+
46
+ export type PromiseOrValue<T> = T | Promise<T>;
@@ -0,0 +1,358 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PopulatedTransaction,
13
+ Signer,
14
+ utils,
15
+ } from "ethers";
16
+ import type {
17
+ FunctionFragment,
18
+ Result,
19
+ EventFragment,
20
+ } from "@ethersproject/abi";
21
+ import type { Listener, Provider } from "@ethersproject/providers";
22
+ import type {
23
+ TypedEventFilter,
24
+ TypedEvent,
25
+ TypedListener,
26
+ OnEvent,
27
+ PromiseOrValue,
28
+ } from "../common";
29
+
30
+ export interface MultiSigInterface extends utils.Interface {
31
+ functions: {
32
+ "getSigners()": FunctionFragment;
33
+ "isSigner(address)": FunctionFragment;
34
+ "setSigner(address,bool)": FunctionFragment;
35
+ "setThreshold(uint256)": FunctionFragment;
36
+ "threshold()": FunctionFragment;
37
+ "totalSigners()": FunctionFragment;
38
+ "verifyNSignatures(bytes32,bytes,uint256)": FunctionFragment;
39
+ "verifySignatures(bytes32,bytes)": FunctionFragment;
40
+ };
41
+
42
+ getFunction(
43
+ nameOrSignatureOrTopic:
44
+ | "getSigners"
45
+ | "isSigner"
46
+ | "setSigner"
47
+ | "setThreshold"
48
+ | "threshold"
49
+ | "totalSigners"
50
+ | "verifyNSignatures"
51
+ | "verifySignatures"
52
+ ): FunctionFragment;
53
+
54
+ encodeFunctionData(
55
+ functionFragment: "getSigners",
56
+ values?: undefined
57
+ ): string;
58
+ encodeFunctionData(
59
+ functionFragment: "isSigner",
60
+ values: [PromiseOrValue<string>]
61
+ ): string;
62
+ encodeFunctionData(
63
+ functionFragment: "setSigner",
64
+ values: [PromiseOrValue<string>, PromiseOrValue<boolean>]
65
+ ): string;
66
+ encodeFunctionData(
67
+ functionFragment: "setThreshold",
68
+ values: [PromiseOrValue<BigNumberish>]
69
+ ): string;
70
+ encodeFunctionData(functionFragment: "threshold", values?: undefined): string;
71
+ encodeFunctionData(
72
+ functionFragment: "totalSigners",
73
+ values?: undefined
74
+ ): string;
75
+ encodeFunctionData(
76
+ functionFragment: "verifyNSignatures",
77
+ values: [
78
+ PromiseOrValue<BytesLike>,
79
+ PromiseOrValue<BytesLike>,
80
+ PromiseOrValue<BigNumberish>
81
+ ]
82
+ ): string;
83
+ encodeFunctionData(
84
+ functionFragment: "verifySignatures",
85
+ values: [PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike>]
86
+ ): string;
87
+
88
+ decodeFunctionResult(functionFragment: "getSigners", data: BytesLike): Result;
89
+ decodeFunctionResult(functionFragment: "isSigner", data: BytesLike): Result;
90
+ decodeFunctionResult(functionFragment: "setSigner", data: BytesLike): Result;
91
+ decodeFunctionResult(
92
+ functionFragment: "setThreshold",
93
+ data: BytesLike
94
+ ): Result;
95
+ decodeFunctionResult(functionFragment: "threshold", data: BytesLike): Result;
96
+ decodeFunctionResult(
97
+ functionFragment: "totalSigners",
98
+ data: BytesLike
99
+ ): Result;
100
+ decodeFunctionResult(
101
+ functionFragment: "verifyNSignatures",
102
+ data: BytesLike
103
+ ): Result;
104
+ decodeFunctionResult(
105
+ functionFragment: "verifySignatures",
106
+ data: BytesLike
107
+ ): Result;
108
+
109
+ events: {
110
+ "SignerSet(address,bool)": EventFragment;
111
+ "ThresholdSet(uint256)": EventFragment;
112
+ };
113
+
114
+ getEvent(nameOrSignatureOrTopic: "SignerSet"): EventFragment;
115
+ getEvent(nameOrSignatureOrTopic: "ThresholdSet"): EventFragment;
116
+ }
117
+
118
+ export interface SignerSetEventObject {
119
+ signer: string;
120
+ active: boolean;
121
+ }
122
+ export type SignerSetEvent = TypedEvent<
123
+ [string, boolean],
124
+ SignerSetEventObject
125
+ >;
126
+
127
+ export type SignerSetEventFilter = TypedEventFilter<SignerSetEvent>;
128
+
129
+ export interface ThresholdSetEventObject {
130
+ threshold: BigNumber;
131
+ }
132
+ export type ThresholdSetEvent = TypedEvent<
133
+ [BigNumber],
134
+ ThresholdSetEventObject
135
+ >;
136
+
137
+ export type ThresholdSetEventFilter = TypedEventFilter<ThresholdSetEvent>;
138
+
139
+ export interface MultiSig extends BaseContract {
140
+ connect(signerOrProvider: Signer | Provider | string): this;
141
+ attach(addressOrName: string): this;
142
+ deployed(): Promise<this>;
143
+
144
+ interface: MultiSigInterface;
145
+
146
+ queryFilter<TEvent extends TypedEvent>(
147
+ event: TypedEventFilter<TEvent>,
148
+ fromBlockOrBlockhash?: string | number | undefined,
149
+ toBlock?: string | number | undefined
150
+ ): Promise<Array<TEvent>>;
151
+
152
+ listeners<TEvent extends TypedEvent>(
153
+ eventFilter?: TypedEventFilter<TEvent>
154
+ ): Array<TypedListener<TEvent>>;
155
+ listeners(eventName?: string): Array<Listener>;
156
+ removeAllListeners<TEvent extends TypedEvent>(
157
+ eventFilter: TypedEventFilter<TEvent>
158
+ ): this;
159
+ removeAllListeners(eventName?: string): this;
160
+ off: OnEvent<this>;
161
+ on: OnEvent<this>;
162
+ once: OnEvent<this>;
163
+ removeListener: OnEvent<this>;
164
+
165
+ functions: {
166
+ getSigners(overrides?: CallOverrides): Promise<[string[]]>;
167
+
168
+ isSigner(
169
+ _signer: PromiseOrValue<string>,
170
+ overrides?: CallOverrides
171
+ ): Promise<[boolean]>;
172
+
173
+ setSigner(
174
+ _signer: PromiseOrValue<string>,
175
+ _active: PromiseOrValue<boolean>,
176
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
177
+ ): Promise<ContractTransaction>;
178
+
179
+ setThreshold(
180
+ _threshold: PromiseOrValue<BigNumberish>,
181
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
182
+ ): Promise<ContractTransaction>;
183
+
184
+ threshold(overrides?: CallOverrides): Promise<[BigNumber]>;
185
+
186
+ totalSigners(overrides?: CallOverrides): Promise<[BigNumber]>;
187
+
188
+ verifyNSignatures(
189
+ _digest: PromiseOrValue<BytesLike>,
190
+ _signatures: PromiseOrValue<BytesLike>,
191
+ _threshold: PromiseOrValue<BigNumberish>,
192
+ overrides?: CallOverrides
193
+ ): Promise<[void]>;
194
+
195
+ verifySignatures(
196
+ _digest: PromiseOrValue<BytesLike>,
197
+ _signatures: PromiseOrValue<BytesLike>,
198
+ overrides?: CallOverrides
199
+ ): Promise<[void]>;
200
+ };
201
+
202
+ getSigners(overrides?: CallOverrides): Promise<string[]>;
203
+
204
+ isSigner(
205
+ _signer: PromiseOrValue<string>,
206
+ overrides?: CallOverrides
207
+ ): Promise<boolean>;
208
+
209
+ setSigner(
210
+ _signer: PromiseOrValue<string>,
211
+ _active: PromiseOrValue<boolean>,
212
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
213
+ ): Promise<ContractTransaction>;
214
+
215
+ setThreshold(
216
+ _threshold: PromiseOrValue<BigNumberish>,
217
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
218
+ ): Promise<ContractTransaction>;
219
+
220
+ threshold(overrides?: CallOverrides): Promise<BigNumber>;
221
+
222
+ totalSigners(overrides?: CallOverrides): Promise<BigNumber>;
223
+
224
+ verifyNSignatures(
225
+ _digest: PromiseOrValue<BytesLike>,
226
+ _signatures: PromiseOrValue<BytesLike>,
227
+ _threshold: PromiseOrValue<BigNumberish>,
228
+ overrides?: CallOverrides
229
+ ): Promise<void>;
230
+
231
+ verifySignatures(
232
+ _digest: PromiseOrValue<BytesLike>,
233
+ _signatures: PromiseOrValue<BytesLike>,
234
+ overrides?: CallOverrides
235
+ ): Promise<void>;
236
+
237
+ callStatic: {
238
+ getSigners(overrides?: CallOverrides): Promise<string[]>;
239
+
240
+ isSigner(
241
+ _signer: PromiseOrValue<string>,
242
+ overrides?: CallOverrides
243
+ ): Promise<boolean>;
244
+
245
+ setSigner(
246
+ _signer: PromiseOrValue<string>,
247
+ _active: PromiseOrValue<boolean>,
248
+ overrides?: CallOverrides
249
+ ): Promise<void>;
250
+
251
+ setThreshold(
252
+ _threshold: PromiseOrValue<BigNumberish>,
253
+ overrides?: CallOverrides
254
+ ): Promise<void>;
255
+
256
+ threshold(overrides?: CallOverrides): Promise<BigNumber>;
257
+
258
+ totalSigners(overrides?: CallOverrides): Promise<BigNumber>;
259
+
260
+ verifyNSignatures(
261
+ _digest: PromiseOrValue<BytesLike>,
262
+ _signatures: PromiseOrValue<BytesLike>,
263
+ _threshold: PromiseOrValue<BigNumberish>,
264
+ overrides?: CallOverrides
265
+ ): Promise<void>;
266
+
267
+ verifySignatures(
268
+ _digest: PromiseOrValue<BytesLike>,
269
+ _signatures: PromiseOrValue<BytesLike>,
270
+ overrides?: CallOverrides
271
+ ): Promise<void>;
272
+ };
273
+
274
+ filters: {
275
+ "SignerSet(address,bool)"(
276
+ signer?: null,
277
+ active?: null
278
+ ): SignerSetEventFilter;
279
+ SignerSet(signer?: null, active?: null): SignerSetEventFilter;
280
+
281
+ "ThresholdSet(uint256)"(threshold?: null): ThresholdSetEventFilter;
282
+ ThresholdSet(threshold?: null): ThresholdSetEventFilter;
283
+ };
284
+
285
+ estimateGas: {
286
+ getSigners(overrides?: CallOverrides): Promise<BigNumber>;
287
+
288
+ isSigner(
289
+ _signer: PromiseOrValue<string>,
290
+ overrides?: CallOverrides
291
+ ): Promise<BigNumber>;
292
+
293
+ setSigner(
294
+ _signer: PromiseOrValue<string>,
295
+ _active: PromiseOrValue<boolean>,
296
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
297
+ ): Promise<BigNumber>;
298
+
299
+ setThreshold(
300
+ _threshold: PromiseOrValue<BigNumberish>,
301
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
302
+ ): Promise<BigNumber>;
303
+
304
+ threshold(overrides?: CallOverrides): Promise<BigNumber>;
305
+
306
+ totalSigners(overrides?: CallOverrides): Promise<BigNumber>;
307
+
308
+ verifyNSignatures(
309
+ _digest: PromiseOrValue<BytesLike>,
310
+ _signatures: PromiseOrValue<BytesLike>,
311
+ _threshold: PromiseOrValue<BigNumberish>,
312
+ overrides?: CallOverrides
313
+ ): Promise<BigNumber>;
314
+
315
+ verifySignatures(
316
+ _digest: PromiseOrValue<BytesLike>,
317
+ _signatures: PromiseOrValue<BytesLike>,
318
+ overrides?: CallOverrides
319
+ ): Promise<BigNumber>;
320
+ };
321
+
322
+ populateTransaction: {
323
+ getSigners(overrides?: CallOverrides): Promise<PopulatedTransaction>;
324
+
325
+ isSigner(
326
+ _signer: PromiseOrValue<string>,
327
+ overrides?: CallOverrides
328
+ ): Promise<PopulatedTransaction>;
329
+
330
+ setSigner(
331
+ _signer: PromiseOrValue<string>,
332
+ _active: PromiseOrValue<boolean>,
333
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
334
+ ): Promise<PopulatedTransaction>;
335
+
336
+ setThreshold(
337
+ _threshold: PromiseOrValue<BigNumberish>,
338
+ overrides?: Overrides & { from?: PromiseOrValue<string> }
339
+ ): Promise<PopulatedTransaction>;
340
+
341
+ threshold(overrides?: CallOverrides): Promise<PopulatedTransaction>;
342
+
343
+ totalSigners(overrides?: CallOverrides): Promise<PopulatedTransaction>;
344
+
345
+ verifyNSignatures(
346
+ _digest: PromiseOrValue<BytesLike>,
347
+ _signatures: PromiseOrValue<BytesLike>,
348
+ _threshold: PromiseOrValue<BigNumberish>,
349
+ overrides?: CallOverrides
350
+ ): Promise<PopulatedTransaction>;
351
+
352
+ verifySignatures(
353
+ _digest: PromiseOrValue<BytesLike>,
354
+ _signatures: PromiseOrValue<BytesLike>,
355
+ overrides?: CallOverrides
356
+ ): Promise<PopulatedTransaction>;
357
+ };
358
+ }