import type { OneOf } from '../../../types/utils.js' /** @internal */ export type CustomPolicy = { data: data type: { custom: string } } /** @internal */ export type TokenAllowancePolicy = { type: 'token-allowance' data: { /** Token allowance (in wei). */ allowance: uint256 } } /** @internal */ export type GasLimitPolicy = { type: 'gas-limit' data: { /** Gas limit (in wei). */ limit: uint256 } } /** @internal */ export type RateLimitPolicy = { type: 'rate-limit' data: { /** Number of times during each interval. */ count: number /** Interval (in seconds). */ interval: number } } export type Policy = OneOf< | TokenAllowancePolicy | GasLimitPolicy | RateLimitPolicy | CustomPolicy >