import type { DynamicConfigValue } from '../hooks/statsig/useDynamicConfig'; import type { FunLogger } from '../utils/funLogger'; /** * Is this recipient blocked? Two sources, both from Statsig: * - `blacklistedwithdrawaladdress` — operator-curated recipient blocks. * - every asset address in `withdrawalconfig` — sending a withdrawal *to* a * token contract burns the funds, so token addresses are never valid * recipients. */ export declare function isBlacklistedWithdrawalAddress({ address, blacklist, withdrawalConfig, }: { address: string; /** Raw `blacklistedwithdrawaladdress` config — its KEYS are the addresses. */ blacklist?: Record; /** * Raw `withdrawalconfig` config. Typed from the generated Statsig defaults, * but the runtime value is unchecked JSON, hence the shape guards below. */ withdrawalConfig?: Partial>; }): boolean; /** * Screen a withdrawal recipient against Chainalysis. `true` blocks. * * - A failed request throws; callers require `isRisky === false`, so in-flight * and errored both hold the CTA. * - Skip this for addresses incompatible with the destination chain (see * `isAddressCompatibleWithChain`) — they can't be screened meaningfully. */ export declare function isWithdrawalRisky({ address, apiKey, logger, screeningDisabled, chainId, }: { address: string; apiKey: string; logger: FunLogger; /** The `disable-frontend-chainalysis` gate, resolved by the caller. */ screeningDisabled?: boolean; /** Internal decimal chain id of the withdrawal's destination chain. */ chainId?: string; }): Promise; //# sourceMappingURL=withdrawalRisk.d.ts.map