import { ContractInterface } from 'ethers';
import { CHAIN_IDS_OPTS } from '../../constants';
import { ISupportedBlockchainNetwork } from './supported-blockchain-network.i';
export type IChain = keyof typeof CHAIN_IDS_OPTS;
export interface IContractRecipe {
    nameOrVersion: string;
    providerUrl: string;
    gateAbi: ContractInterface;
    gateContractAddress: string;
    coreContractAddress: string;
    chain: ISupportedBlockchainNetwork;
    uniqueKey: string;
    isTestnet: boolean;
    gasUnitsCost: {
        ideaCreation: number;
        ideaStageCreation: number;
    };
    errorsDealWith: {
        increaseGasUnits: string[];
        decreaseGasUnits: string[];
    };
    coinCode: 'MATIC' | 'ETH';
    exhibition?: {
        name: string;
        image: string;
    };
}
export { Contract } from 'ethers';
