import { FeeAmount } from '@envanik/sdk';
export declare enum Field {
    CURRENCY_A = "CURRENCY_A",
    CURRENCY_B = "CURRENCY_B"
}
export declare enum Bound {
    LOWER = "LOWER",
    UPPER = "UPPER"
}
declare type FullRange = true;
export interface MintState {
    readonly independentField: Field;
    readonly typedValue: string;
    readonly feeAmount: FeeAmount | undefined;
    readonly startPriceTypedValue: string;
    readonly leftRangeTypedValue: string | FullRange;
    readonly rightRangeTypedValue: string | FullRange;
    readonly [Field.CURRENCY_A]: {
        readonly currencyId: string | undefined;
    };
    readonly [Field.CURRENCY_B]: {
        readonly currencyId: string | undefined;
    };
}
export declare const initialState: MintState;
export declare const useMintStateAtom: () => {
    mintState: MintState;
    resetMintState: () => void;
    setFullRangeValue: () => void;
    setTypeStartPriceInput: ({ typedValue }: {
        typedValue: string;
    }) => void;
    setTypeLeftRangeInput: ({ typedValue }: {
        typedValue: string;
    }) => void;
    setTypeRightRangeInput: ({ typedValue }: {
        typedValue: string;
    }) => void;
    setTypeInput: ({ field, typedValue }: {
        field: Field;
        typedValue: string;
    }) => void;
    selectCurrency: ({ currencyId, field }: {
        currencyId: string;
        field: Field;
    }) => void;
    setFeeAmount: ({ value }: {
        value: FeeAmount;
    }) => void;
    switchCurrencies: () => void;
    resetMintStateOnToggle: () => void;
};
export {};
