import type { LenderDebitData, DebitData } from '@1delta/calldata-sdk';
/**
 * Checks whether a lender-level delegation/approval is needed for
 * a given token and amount.
 *
 * Returns `true` if approval IS needed, `false` if already approved.
 */
export declare function needsLenderApproval(params: {
    lender: string;
    lenderDebitData: LenderDebitData | undefined;
    tokenAddress: string;
    amount: bigint;
    chainId: string;
    cToken?: string;
    aaveV4Spoke?: string;
    /** Silo: check the protected share token instead of collateral */
    isProtected?: boolean;
}): boolean;
/**
 * Checks whether an ERC20 or Permit2 token approval is needed for
 * a given spender and amount.
 *
 * Returns `true` if approval IS needed, `false` if already approved.
 */
export declare function needsTokenApproval(params: {
    debitData: DebitData | undefined;
    spender: string;
    amount: bigint;
    chainId: string;
    usePermit2?: boolean;
}): boolean;
//# sourceMappingURL=evaluate.d.ts.map