import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { ContractFactory } from '../../../contract/contracts';
import { Network } from '../../../types/network.interface';
declare type ContractOpts = {
    address: string;
    network: Network;
};
export declare class SynthetixContractFactory extends ContractFactory {
    protected readonly appToolkit: IAppToolkit;
    constructor(appToolkit: IAppToolkit);
    synthetixAddressResolver({ address, network }: ContractOpts): import("./ethers").SynthetixAddressResolver;
    synthetixExchangeRates({ address, network }: ContractOpts): import("./ethers").SynthetixExchangeRates;
    synthetixLoan({ address, network }: ContractOpts): import("./ethers").SynthetixLoan;
    synthetixNetworkToken({ address, network }: ContractOpts): import("./ethers").SynthetixNetworkToken;
    synthetixPerp({ address, network }: ContractOpts): import("./ethers").SynthetixPerp;
    synthetixRewards({ address, network }: ContractOpts): import("./ethers").SynthetixRewards;
    synthetixSummaryUtil({ address, network }: ContractOpts): import("./ethers").SynthetixSummaryUtil;
    synthetixSynthToken({ address, network }: ContractOpts): import("./ethers").SynthetixSynthToken;
}
export type { SynthetixAddressResolver } from './ethers';
export type { SynthetixExchangeRates } from './ethers';
export type { SynthetixLoan } from './ethers';
export type { SynthetixNetworkToken } from './ethers';
export type { SynthetixPerp } from './ethers';
export type { SynthetixRewards } from './ethers';
export type { SynthetixSummaryUtil } from './ethers';
export type { SynthetixSynthToken } from './ethers';
