@antefinance/ante-sdk
Version:
Library for interacting with Ante smart contracts
255 lines (247 loc) • 6.5 kB
text/typescript
import {
ChainId,
GateTypeEnum,
Network,
GrantPoolVersion,
GiveawayPoolVersion,
HashTreeIndexVersion,
MetaPoolVersion,
Version,
IOUVersion,
TaskPoolVersion,
USD1Version,
TestTokenVersion,
} from '@types';
import dtsConfig from './dts.config';
import factoryConfigv05 from './v0.5/factory.config';
import factoryConfigv051 from './v0.5.1/factory.config';
import factoryConfigv052 from './v0.5.2/factory.config';
import factoryConfigv06 from './v0.6/factory.config';
import grantPoolConfig from './grant-pool.config';
import grantPoolV2Config from './grant-pool-v2.config';
import testTokenConfig from './test-token.config';
import giveawayPoolConfig from './giveaway-pool.config';
import metaPoolConfig from './meta-pool.config';
import metaPool001Config from './meta-pool-001.config';
import metaPool002Config from './meta-pool-002.config';
import hashTreeIndexConfig from './hash-tree-index.config';
import hashTreeIndexV2Config from './hash-tree-index-v2.config';
import zkIOU721FactoryConfig from './iou/zk-iou-721-factory.config';
import minGrantV2ContributionConfig from './iou/gate/min-grant-v2-contribution.config';
import minGrantV2Contribution2Config from './iou/gate/min-grant-v2-contribution-2.config';
import llamaConfig from './iou/gate/llama.config';
import gateConfig from './gate';
import { metaPoolV01Abi } from '@contracts/AnteMetaPoolV01';
import { metaPoolV001Abi } from '@contracts/AnteMetaPoolV001';
import { metaPoolV002Abi } from '@contracts/AnteMetaPoolV002';
import { grantPoolAbi } from '@contracts/AnteGrantPool';
import { giveawayPoolAbi } from '@contracts/AnteGiveawayPool';
import { hashTreeIndexAbi } from '@contracts/AnteHashTreeIndex';
import { hashTreeIndexV2Abi } from '@contracts/AnteHashTreeIndexV2';
import { allowlistAnteGateAbi } from '@contracts/gates/AllowlistAnteGate';
import { nftAnteGateAbi } from '@contracts/gates/NFTAnteGate';
import { zupassAnteGateAbi } from '@contracts/gates/ZupassAnteGate';
import { grantPoolV2Abi } from '@contracts/AnteGrantPoolV2';
import { grantPoolV2AlphaAbi } from '@contracts/AnteGrantPoolV2.0';
import { ZKIOU721Abi } from '@contracts/ZKAnteIOU721';
import { ZKIOU721FactoryAbi } from '@contracts/ZKAnteIOU721Factory';
import { grantIOUMintGateAbi } from '@contracts/AnteGrantIOUMintGate';
import grantPoolV2AlphaConfig from './grant-pool-v2-alpha.config';
import { taskPoolAbi } from '@contracts/AnteTaskPool';
import taskPoolConfig from './task-pool.config';
import usd1Config from './usd1.config';
import { USD1Abi } from '@contracts/USD1';
import { erc20Abi } from 'viem';
export type IOUGateTypeEnum =
| 'minGrantV2Contribution'
| 'minGrantV2Contribution2'
| 'llama';
export type FactoryConfig = {
POOL_FACTORY: string;
};
export type DTSConfig = {
PROXY_ADDRESS: string;
};
export type AnteConfig = {
factory: {
[]?: {
[]?: FactoryConfig;
};
};
decentralizedTrustScore: {
[]?: DTSConfig;
};
metaPool: {
[]?: {
[]?: string;
};
};
grantPool: {
[]?: {
[]?: string;
};
};
taskPool: {
[]?: {
[]?: string;
};
};
giveawayPool: {
[]?: {
[]?: string;
};
};
hashTreeIndex: {
[]?: {
[]?: string;
};
};
gate: {
[]?: {
[]?: string;
};
};
iouFactory: {
[]?: {
[]?: string;
};
};
iouGate: {
[]?: {
[]?: string;
};
};
usd1: {
[]?: {
[]?: string;
};
};
testToken: {
[]?: {
[]?: string;
};
};
};
export const defaultConfig: AnteConfig = {
factory: {
'v0.5': factoryConfigv05,
'v0.5.1': factoryConfigv051,
'v0.5.2': factoryConfigv052,
'v0.6': factoryConfigv06,
},
decentralizedTrustScore: dtsConfig,
metaPool: {
v01: metaPoolConfig,
v001: metaPool001Config,
v002: metaPool002Config,
},
grantPool: {
v01: grantPoolConfig,
v2Alpha: grantPoolV2AlphaConfig,
v2: grantPoolV2Config,
},
giveawayPool: {
v01: giveawayPoolConfig,
},
taskPool: {
v01: taskPoolConfig,
},
hashTreeIndex: {
v1: hashTreeIndexConfig,
v2: hashTreeIndexV2Config,
},
gate: gateConfig,
iouFactory: {
v1: zkIOU721FactoryConfig,
},
iouGate: {
minGrantV2Contribution: minGrantV2ContributionConfig,
minGrantV2Contribution2: minGrantV2Contribution2Config,
llama: llamaConfig,
},
usd1: {
v1: usd1Config,
},
testToken: {
v1: testTokenConfig,
},
};
export type AbiConfig = {
metaPool: {
[]?: readonly any[];
};
grantPool: {
[]?: readonly any[];
};
giveawayPool: {
[]?: readonly any[];
};
hashTreeIndex: {
[]?: readonly any[];
};
taskPool: {
[]?: readonly any[];
};
gate: {
[]?: readonly any[];
};
iou: {
[]?: readonly any[];
};
iouFactory: {
[]?: readonly any[];
};
iouGate: {
[]?: readonly any[];
};
usd1: {
[]?: readonly any[];
};
testToken: {
[]?: readonly any[];
};
};
export const abis: AbiConfig = {
metaPool: {
v01: metaPoolV01Abi,
v001: metaPoolV001Abi,
v002: metaPoolV002Abi,
},
grantPool: {
v01: grantPoolAbi,
v2Alpha: grantPoolV2AlphaAbi,
v2: grantPoolV2Abi,
},
giveawayPool: {
v01: giveawayPoolAbi,
},
hashTreeIndex: {
v1: hashTreeIndexAbi,
v2: hashTreeIndexV2Abi,
},
taskPool: {
v01: taskPoolAbi,
},
gate: {
[]: allowlistAnteGateAbi,
[]: nftAnteGateAbi,
[]: zupassAnteGateAbi,
},
iou: {
v1: ZKIOU721Abi,
},
iouFactory: {
v1: ZKIOU721FactoryAbi,
},
iouGate: {
minGrantV2Contribution: grantIOUMintGateAbi,
minGrantV2Contribution2: grantIOUMintGateAbi,
llama: grantIOUMintGateAbi,
},
usd1: {
v1: USD1Abi,
},
testToken: {
v1: erc20Abi,
},
};