/** * @fileoverview Configuration for the ban mechanism. * * Cooling periods and supermajority thresholds for BAN_MEMBER * and UNBAN_MEMBER proposals. * * @see Network Trust and Ban Mechanism spec, Requirements 2.1-2.5, 1.4 */ /** * Configuration for ban/unban proposal cooling periods and vote thresholds. */ export interface IBanConfig { /** * Mandatory waiting period (ms) before a BAN_MEMBER proposal can be executed, * even if the vote threshold is reached early. * Default: 72 hours. Minimum: 1 hour. */ banCoolingPeriodMs: number; /** * Mandatory waiting period (ms) before an UNBAN_MEMBER proposal can be executed. * Default: 48 hours. Minimum: 1 hour. */ unbanCoolingPeriodMs: number; /** * Supermajority fraction required for BAN_MEMBER and UNBAN_MEMBER votes. * Default: 0.75 (75%). Minimum: 0.67 (67%). */ banSupermajorityThreshold: number; } /** * Default ban configuration values. */ export declare const DEFAULT_BAN_CONFIG: IBanConfig; /** * Minimum allowed values for ban configuration. */ export declare const MIN_BAN_CONFIG: { readonly banCoolingPeriodMs: number; readonly unbanCoolingPeriodMs: number; readonly banSupermajorityThreshold: 0.67; }; /** * Validate and normalize ban configuration, clamping to minimums. */ export declare function normalizeBanConfig(partial?: Partial): IBanConfig; //# sourceMappingURL=banConfig.d.ts.map