import { Address, NumberAsString, Token } from '../../types'; export type PoolState = { tin: bigint; tout: bigint; Art: bigint; rate: bigint; line: bigint; }; export type MakerPsmData = { psmAddress: Address; gemJoinAddress: Address; gemDecimals: number; toll: string; isApproved?: boolean; }; export type PoolConfig = { gem: Token; gemJoinAddress: Address; psmAddress: Address; identifier: string; }; export type DexParams = { dai: Token; vatAddress: Address; pools: PoolConfig[]; }; export type MakerPsmParams = [ srcToken: Address, destToken: Address, fromAmount: NumberAsString, toAmount: NumberAsString, toll: NumberAsString, to18ConversionFactor: NumberAsString, exchange: Address, gemJoinAddress: Address, metadata: string, beneficiaryDirectionApproveFlag: NumberAsString ]; export type MakerPsmDirectPayload = [params: MakerPsmParams, permit: string];