-
Notifications
You must be signed in to change notification settings - Fork 3
/
contracts.ts
104 lines (91 loc) · 2.96 KB
/
contracts.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
export type DeployedContractAddressOrNull = string | null
export type ContractGroup = {
MINTER: DeployedContractAddressOrNull
OVEN_PROXY: DeployedContractAddressOrNull
OVEN_FACTORY: DeployedContractAddressOrNull
TOKEN: DeployedContractAddressOrNull
OVEN_REGISTRY: DeployedContractAddressOrNull
DEVELOPER_FUND: DeployedContractAddressOrNull
STABILITY_FUND: DeployedContractAddressOrNull
ORACLE: DeployedContractAddressOrNull
// Dependent contracts
HARBINGER_NORMALIZER: DeployedContractAddressOrNull
// Kolibri Liquidity Pool
LIQUIDITY_POOL: DeployedContractAddressOrNull
// Kolibri Savings pool
SAVINGS_POOL: DeployedContractAddressOrNull
// DEX Configurations
DEXES: {
QUIPUSWAP: {
POOL: DeployedContractAddressOrNull
FA1_2_FACTORY: DeployedContractAddressOrNull
FA2_FACTORY: DeployedContractAddressOrNull
}
PLENTY: {
POOL: DeployedContractAddressOrNull
PLENTY_QUIPUSWAP_POOL: DeployedContractAddressOrNull
PLENTY_TOKEN: DeployedContractAddressOrNull
}
}
// Below values are not applicable to testnet deployment.
KOLIBRI_BAKER: DeployedContractAddressOrNull
// Governance Roles
GOVERNOR: DeployedContractAddressOrNull
PAUSE_GUARDIAN: DeployedContractAddressOrNull
BREAK_GLASS_MULTISIG: DeployedContractAddressOrNull
FUND_ADMIN: DeployedContractAddressOrNull
// DAO
DAO: DeployedContractAddressOrNull
DAO_TOKEN: DeployedContractAddressOrNull
DAO_COMMUNITY_FUND: DeployedContractAddressOrNull
// Farm Stuff
FARMS: {
KUSD: {
farm: DeployedContractAddressOrNull
reserve: DeployedContractAddressOrNull
}
QLKUSD: {
farm: DeployedContractAddressOrNull
reserve: DeployedContractAddressOrNull
}
KUSD_LP: {
farm: DeployedContractAddressOrNull
reserve: DeployedContractAddressOrNull
}
YOUVES_FLAT: {
farm: DeployedContractAddressOrNull
reserve: DeployedContractAddressOrNull
}
}
// A user may have multiple payment vaults. Voting vaults should be a subset
PAYMENT_VAULTS: {
[key: string]: string[]
}
// A user only has one "voting vault" and we'll use this for the DAO frontend
VOTING_VAULTS: {
[key: string]: string
}
BREAK_GLASS_CONTRACTS: {
MINTER: DeployedContractAddressOrNull
OVEN_PROXY: DeployedContractAddressOrNull
OVEN_FACTORY: DeployedContractAddressOrNull
TOKEN: DeployedContractAddressOrNull
OVEN_REGISTRY: DeployedContractAddressOrNull
DEVELOPER_FUND: DeployedContractAddressOrNull
STABILITY_FUND: DeployedContractAddressOrNull
ORACLE: DeployedContractAddressOrNull
LIQUIDITY_POOL: DeployedContractAddressOrNull
SAVINGS_POOL: DeployedContractAddressOrNull
DAO_COMMUNITY_FUND: DeployedContractAddressOrNull
// All payment vaults should also capture all voting vaults
PAYMENT_VAULTS: {
[key: string]: string[]
}
}
}
export type Contracts = {
ZERO: ContractGroup
TEST: ContractGroup
MAIN: ContractGroup
SANDBOX: ContractGroup
}