@gooddollar/goodprotocol 2.0.34-beta.1 → 2.0.34-beta.3

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 (67) hide show
  1. package/artifacts/abis/GenericDistributionHelper.min.json +1 -0
  2. package/artifacts/abis/INonfungiblePositionManager.min.json +1 -0
  3. package/artifacts/abis/IUniswapV3Pool.min.json +1 -0
  4. package/artifacts/abis/UBISchemeV2.min.json +1 -1
  5. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.dbg.json +4 -0
  6. package/artifacts/contracts/IUniswapV3.sol/INonfungiblePositionManager.json +102 -0
  7. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.dbg.json +4 -0
  8. package/artifacts/contracts/IUniswapV3.sol/IUniswapV3Pool.json +93 -0
  9. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.dbg.json +4 -0
  10. package/artifacts/contracts/reserve/GenericDistributionHelper.sol/GenericDistributionHelper.json +931 -0
  11. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  12. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.json +7 -2
  13. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  14. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  15. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  16. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.json +2 -2
  17. package/contracts/IUniswapV3.sol +51 -0
  18. package/contracts/reserve/GenericDistributionHelper.sol +319 -0
  19. package/contracts/ubi/UBISchemeV2.sol +8 -4
  20. package/contracts/utils/ProxyFactory1967.sol +16 -18
  21. package/hardhat.config.ts +14 -6
  22. package/package.json +1 -1
  23. package/releases/deploy-settings.json +15 -2
  24. package/releases/deployment.json +72 -46
  25. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +4 -3
  26. package/scripts/multichain-deploy/1_basicdao-deploy.ts +18 -9
  27. package/scripts/multichain-deploy/4_ubi-deploy.ts +1 -1
  28. package/scripts/multichain-deploy/8_disthelper-deploy.ts +152 -0
  29. package/scripts/multichain-deploy/createUniswapTestPools.ts +163 -0
  30. package/scripts/multichain-deploy/helpers.ts +76 -6
  31. package/scripts/proposals/gip-25-xdc-upgrade.ts +438 -0
  32. package/test/helpers.ts +1 -1
  33. package/test/ubi/UBISchemeV2.test.ts +35 -108
  34. package/types/@uniswap/index.ts +2 -0
  35. package/types/@uniswap/v2-periphery/contracts/index.ts +5 -0
  36. package/types/@uniswap/v2-periphery/contracts/interfaces/IWETH.ts +159 -0
  37. package/types/@uniswap/v2-periphery/contracts/interfaces/index.ts +4 -0
  38. package/types/@uniswap/v2-periphery/index.ts +5 -0
  39. package/types/contracts/IUniswapV3.sol/INonfungiblePositionManager.ts +151 -0
  40. package/types/contracts/IUniswapV3.sol/IUniswapV3Factory.ts +155 -0
  41. package/types/contracts/IUniswapV3.sol/IUniswapV3Pool.ts +179 -0
  42. package/types/contracts/IUniswapV3.sol/index.ts +5 -0
  43. package/types/contracts/index.ts +2 -0
  44. package/types/contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper.ts +1247 -0
  45. package/types/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +4 -0
  46. package/types/contracts/reserve/GenericDistributionHelper.ts +1304 -0
  47. package/types/contracts/reserve/index.ts +1 -0
  48. package/types/contracts/ubi/UBISchemeV2.ts +14 -3
  49. package/types/factories/@uniswap/index.ts +1 -0
  50. package/types/factories/@uniswap/v2-periphery/contracts/index.ts +4 -0
  51. package/types/factories/@uniswap/v2-periphery/contracts/interfaces/IWETH__factory.ts +67 -0
  52. package/types/factories/@uniswap/v2-periphery/contracts/interfaces/index.ts +4 -0
  53. package/types/factories/@uniswap/v2-periphery/index.ts +4 -0
  54. package/types/factories/contracts/IUniswapV3.sol/INonfungiblePositionManager__factory.ts +121 -0
  55. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Factory__factory.ts +84 -0
  56. package/types/factories/contracts/IUniswapV3.sol/IUniswapV3Pool__factory.ts +108 -0
  57. package/types/factories/contracts/IUniswapV3.sol/index.ts +5 -0
  58. package/types/factories/contracts/index.ts +1 -0
  59. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/GenericDistributionHelper__factory.ts +935 -0
  60. package/types/factories/contracts/reserve/GenericDistributionHelper copy.sol/index.ts +4 -0
  61. package/types/factories/contracts/reserve/GenericDistributionHelper__factory.ts +987 -0
  62. package/types/factories/contracts/reserve/index.ts +1 -0
  63. package/types/factories/contracts/ubi/UBISchemeV2__factory.ts +6 -1
  64. package/types/factories/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy__factory.ts +1 -1
  65. package/types/factories/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967__factory.ts +1 -1
  66. package/types/hardhat.d.ts +36 -0
  67. package/types/index.ts +8 -0
@@ -0,0 +1,155 @@
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 { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import type { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "../../common";
24
+
25
+ export interface IUniswapV3FactoryInterface extends utils.Interface {
26
+ functions: {
27
+ "createPool(address,address,uint24)": FunctionFragment;
28
+ "getPool(address,address,uint24)": FunctionFragment;
29
+ };
30
+
31
+ getFunction(
32
+ nameOrSignatureOrTopic: "createPool" | "getPool"
33
+ ): FunctionFragment;
34
+
35
+ encodeFunctionData(
36
+ functionFragment: "createPool",
37
+ values: [string, string, BigNumberish]
38
+ ): string;
39
+ encodeFunctionData(
40
+ functionFragment: "getPool",
41
+ values: [string, string, BigNumberish]
42
+ ): string;
43
+
44
+ decodeFunctionResult(functionFragment: "createPool", data: BytesLike): Result;
45
+ decodeFunctionResult(functionFragment: "getPool", data: BytesLike): Result;
46
+
47
+ events: {};
48
+ }
49
+
50
+ export interface IUniswapV3Factory extends BaseContract {
51
+ connect(signerOrProvider: Signer | Provider | string): this;
52
+ attach(addressOrName: string): this;
53
+ deployed(): Promise<this>;
54
+
55
+ interface: IUniswapV3FactoryInterface;
56
+
57
+ queryFilter<TEvent extends TypedEvent>(
58
+ event: TypedEventFilter<TEvent>,
59
+ fromBlockOrBlockhash?: string | number | undefined,
60
+ toBlock?: string | number | undefined
61
+ ): Promise<Array<TEvent>>;
62
+
63
+ listeners<TEvent extends TypedEvent>(
64
+ eventFilter?: TypedEventFilter<TEvent>
65
+ ): Array<TypedListener<TEvent>>;
66
+ listeners(eventName?: string): Array<Listener>;
67
+ removeAllListeners<TEvent extends TypedEvent>(
68
+ eventFilter: TypedEventFilter<TEvent>
69
+ ): this;
70
+ removeAllListeners(eventName?: string): this;
71
+ off: OnEvent<this>;
72
+ on: OnEvent<this>;
73
+ once: OnEvent<this>;
74
+ removeListener: OnEvent<this>;
75
+
76
+ functions: {
77
+ createPool(
78
+ tokenA: string,
79
+ tokenB: string,
80
+ fee: BigNumberish,
81
+ overrides?: Overrides & { from?: string }
82
+ ): Promise<ContractTransaction>;
83
+
84
+ getPool(
85
+ tokenA: string,
86
+ tokenB: string,
87
+ fee: BigNumberish,
88
+ overrides?: CallOverrides
89
+ ): Promise<[string] & { pool: string }>;
90
+ };
91
+
92
+ createPool(
93
+ tokenA: string,
94
+ tokenB: string,
95
+ fee: BigNumberish,
96
+ overrides?: Overrides & { from?: string }
97
+ ): Promise<ContractTransaction>;
98
+
99
+ getPool(
100
+ tokenA: string,
101
+ tokenB: string,
102
+ fee: BigNumberish,
103
+ overrides?: CallOverrides
104
+ ): Promise<string>;
105
+
106
+ callStatic: {
107
+ createPool(
108
+ tokenA: string,
109
+ tokenB: string,
110
+ fee: BigNumberish,
111
+ overrides?: CallOverrides
112
+ ): Promise<string>;
113
+
114
+ getPool(
115
+ tokenA: string,
116
+ tokenB: string,
117
+ fee: BigNumberish,
118
+ overrides?: CallOverrides
119
+ ): Promise<string>;
120
+ };
121
+
122
+ filters: {};
123
+
124
+ estimateGas: {
125
+ createPool(
126
+ tokenA: string,
127
+ tokenB: string,
128
+ fee: BigNumberish,
129
+ overrides?: Overrides & { from?: string }
130
+ ): Promise<BigNumber>;
131
+
132
+ getPool(
133
+ tokenA: string,
134
+ tokenB: string,
135
+ fee: BigNumberish,
136
+ overrides?: CallOverrides
137
+ ): Promise<BigNumber>;
138
+ };
139
+
140
+ populateTransaction: {
141
+ createPool(
142
+ tokenA: string,
143
+ tokenB: string,
144
+ fee: BigNumberish,
145
+ overrides?: Overrides & { from?: string }
146
+ ): Promise<PopulatedTransaction>;
147
+
148
+ getPool(
149
+ tokenA: string,
150
+ tokenB: string,
151
+ fee: BigNumberish,
152
+ overrides?: CallOverrides
153
+ ): Promise<PopulatedTransaction>;
154
+ };
155
+ }
@@ -0,0 +1,179 @@
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 { FunctionFragment, Result } from "@ethersproject/abi";
17
+ import type { Listener, Provider } from "@ethersproject/providers";
18
+ import type {
19
+ TypedEventFilter,
20
+ TypedEvent,
21
+ TypedListener,
22
+ OnEvent,
23
+ } from "../../common";
24
+
25
+ export interface IUniswapV3PoolInterface extends utils.Interface {
26
+ functions: {
27
+ "initialize(uint160)": FunctionFragment;
28
+ "slot0()": FunctionFragment;
29
+ "token0()": FunctionFragment;
30
+ "token1()": FunctionFragment;
31
+ };
32
+
33
+ getFunction(
34
+ nameOrSignatureOrTopic: "initialize" | "slot0" | "token0" | "token1"
35
+ ): FunctionFragment;
36
+
37
+ encodeFunctionData(
38
+ functionFragment: "initialize",
39
+ values: [BigNumberish]
40
+ ): string;
41
+ encodeFunctionData(functionFragment: "slot0", values?: undefined): string;
42
+ encodeFunctionData(functionFragment: "token0", values?: undefined): string;
43
+ encodeFunctionData(functionFragment: "token1", values?: undefined): string;
44
+
45
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
46
+ decodeFunctionResult(functionFragment: "slot0", data: BytesLike): Result;
47
+ decodeFunctionResult(functionFragment: "token0", data: BytesLike): Result;
48
+ decodeFunctionResult(functionFragment: "token1", data: BytesLike): Result;
49
+
50
+ events: {};
51
+ }
52
+
53
+ export interface IUniswapV3Pool extends BaseContract {
54
+ connect(signerOrProvider: Signer | Provider | string): this;
55
+ attach(addressOrName: string): this;
56
+ deployed(): Promise<this>;
57
+
58
+ interface: IUniswapV3PoolInterface;
59
+
60
+ queryFilter<TEvent extends TypedEvent>(
61
+ event: TypedEventFilter<TEvent>,
62
+ fromBlockOrBlockhash?: string | number | undefined,
63
+ toBlock?: string | number | undefined
64
+ ): Promise<Array<TEvent>>;
65
+
66
+ listeners<TEvent extends TypedEvent>(
67
+ eventFilter?: TypedEventFilter<TEvent>
68
+ ): Array<TypedListener<TEvent>>;
69
+ listeners(eventName?: string): Array<Listener>;
70
+ removeAllListeners<TEvent extends TypedEvent>(
71
+ eventFilter: TypedEventFilter<TEvent>
72
+ ): this;
73
+ removeAllListeners(eventName?: string): this;
74
+ off: OnEvent<this>;
75
+ on: OnEvent<this>;
76
+ once: OnEvent<this>;
77
+ removeListener: OnEvent<this>;
78
+
79
+ functions: {
80
+ initialize(
81
+ sqrtPriceX96: BigNumberish,
82
+ overrides?: Overrides & { from?: string }
83
+ ): Promise<ContractTransaction>;
84
+
85
+ slot0(
86
+ overrides?: CallOverrides
87
+ ): Promise<
88
+ [BigNumber, number, number, number, number, number, boolean] & {
89
+ sqrtPriceX96: BigNumber;
90
+ tick: number;
91
+ observationIndex: number;
92
+ observationCardinality: number;
93
+ observationCardinalityNext: number;
94
+ feeProtocol: number;
95
+ unlocked: boolean;
96
+ }
97
+ >;
98
+
99
+ token0(overrides?: CallOverrides): Promise<[string]>;
100
+
101
+ token1(overrides?: CallOverrides): Promise<[string]>;
102
+ };
103
+
104
+ initialize(
105
+ sqrtPriceX96: BigNumberish,
106
+ overrides?: Overrides & { from?: string }
107
+ ): Promise<ContractTransaction>;
108
+
109
+ slot0(
110
+ overrides?: CallOverrides
111
+ ): Promise<
112
+ [BigNumber, number, number, number, number, number, boolean] & {
113
+ sqrtPriceX96: BigNumber;
114
+ tick: number;
115
+ observationIndex: number;
116
+ observationCardinality: number;
117
+ observationCardinalityNext: number;
118
+ feeProtocol: number;
119
+ unlocked: boolean;
120
+ }
121
+ >;
122
+
123
+ token0(overrides?: CallOverrides): Promise<string>;
124
+
125
+ token1(overrides?: CallOverrides): Promise<string>;
126
+
127
+ callStatic: {
128
+ initialize(
129
+ sqrtPriceX96: BigNumberish,
130
+ overrides?: CallOverrides
131
+ ): Promise<void>;
132
+
133
+ slot0(
134
+ overrides?: CallOverrides
135
+ ): Promise<
136
+ [BigNumber, number, number, number, number, number, boolean] & {
137
+ sqrtPriceX96: BigNumber;
138
+ tick: number;
139
+ observationIndex: number;
140
+ observationCardinality: number;
141
+ observationCardinalityNext: number;
142
+ feeProtocol: number;
143
+ unlocked: boolean;
144
+ }
145
+ >;
146
+
147
+ token0(overrides?: CallOverrides): Promise<string>;
148
+
149
+ token1(overrides?: CallOverrides): Promise<string>;
150
+ };
151
+
152
+ filters: {};
153
+
154
+ estimateGas: {
155
+ initialize(
156
+ sqrtPriceX96: BigNumberish,
157
+ overrides?: Overrides & { from?: string }
158
+ ): Promise<BigNumber>;
159
+
160
+ slot0(overrides?: CallOverrides): Promise<BigNumber>;
161
+
162
+ token0(overrides?: CallOverrides): Promise<BigNumber>;
163
+
164
+ token1(overrides?: CallOverrides): Promise<BigNumber>;
165
+ };
166
+
167
+ populateTransaction: {
168
+ initialize(
169
+ sqrtPriceX96: BigNumberish,
170
+ overrides?: Overrides & { from?: string }
171
+ ): Promise<PopulatedTransaction>;
172
+
173
+ slot0(overrides?: CallOverrides): Promise<PopulatedTransaction>;
174
+
175
+ token0(overrides?: CallOverrides): Promise<PopulatedTransaction>;
176
+
177
+ token1(overrides?: CallOverrides): Promise<PopulatedTransaction>;
178
+ };
179
+ }
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { INonfungiblePositionManager } from "./INonfungiblePositionManager";
5
+ export type { IUniswapV3Pool } from "./IUniswapV3Pool";
@@ -5,6 +5,8 @@ import type * as daoStackInterfacesSol from "./DAOStackInterfaces.sol";
5
5
  export type { daoStackInterfacesSol };
6
6
  import type * as iQuoterSol from "./IQuoter.sol";
7
7
  export type { iQuoterSol };
8
+ import type * as iUniswapV3Sol from "./IUniswapV3.sol";
9
+ export type { iUniswapV3Sol };
8
10
  import type * as interfacesSol from "./Interfaces.sol";
9
11
  export type { interfacesSol };
10
12
  import type * as mentoInterfacesSol from "./MentoInterfaces.sol";