UNPKG

@waku/rln

Version:

RLN (Rate Limiting Nullifier) implementation for Waku

124 lines (123 loc) 3.19 kB
export declare const RLN_CONTRACT: { chainId: number; address: string; abi: ({ inputs: never[]; stateMutability: string; type: string; name?: undefined; anonymous?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; anonymous?: undefined; outputs?: undefined; } | { anonymous: boolean; inputs: { indexed: boolean; internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; outputs: { internalType: string; name: string; type: string; }[]; stateMutability: string; type: string; anonymous?: undefined; })[]; }; export declare const PRICE_CALCULATOR_CONTRACT: { chainId: number; address: string; abi: ({ inputs: { internalType: string; name: string; type: string; }[]; stateMutability: string; type: string; name?: undefined; anonymous?: undefined; outputs?: undefined; } | { inputs: never[]; name: string; type: string; stateMutability?: undefined; anonymous?: undefined; outputs?: undefined; } | { anonymous: boolean; inputs: { indexed: boolean; internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; outputs: { internalType: string; name: string; type: string; }[]; stateMutability: string; type: string; anonymous?: undefined; })[]; }; /** * Rate limit tiers (messages per epoch) * Each membership can specify a rate limit within these bounds. * @see https://github.com/waku-org/specs/blob/master/standards/core/rln-contract.md#implementation-suggestions */ export declare const RATE_LIMIT_TIERS: { readonly LOW: 20; readonly MEDIUM: 200; readonly HIGH: 600; }; export declare const RATE_LIMIT_PARAMS: { readonly MIN_RATE: 20; readonly MAX_RATE: 600; readonly MAX_TOTAL_RATE: 160000; readonly EPOCH_LENGTH: 600; }; /** * Default Q value for the RLN contract * This is the upper bound for the ID commitment * @see https://github.com/waku-org/specs/blob/master/standards/core/rln-contract.md#implementation-suggestions */ export declare const RLN_Q: bigint; export declare const DEFAULT_RATE_LIMIT: 600;