import { ethers } from 'ethers';
import { DecodedTypedMessageValue } from '../../types/message.types';
export declare const decodeMessage: (message: Record<string, any>, typeDefinition: ethers.TypedDataField[], types: Record<string, ethers.TypedDataField[]>) => Record<string, DecodedTypedMessageValue>;
export declare const getDecodedMessage: (message: Record<string, any>, types: Record<string, ethers.TypedDataField[]>, primaryType: string) => {
    primaryType: {
        value: string;
        type: string;
    };
};
type TokenDetail = {
    token: string;
    amount: string;
};
export declare const getPermitInfo: (message: Record<string, any>, types: Record<string, ethers.TypedDataField[]>, domain: Record<string, unknown>, primaryType: string) => {
    isPermit: boolean;
    tokenDetails?: undefined;
    spender?: undefined;
} | {
    isPermit: true;
    tokenDetails: TokenDetail[];
    spender: string | undefined;
};
export {};
