/** * cloakbrowser-human — Configuration and presets. * * All numeric parameters for human-like behavior are centralized here. * Two built-in presets: 'default' (normal human speed) and 'careful' (slower, more cautious). */ export interface HumanConfig { typing_delay: number; typing_delay_spread: number; typing_pause_chance: number; typing_pause_range: [number, number]; shift_down_delay: [number, number]; shift_up_delay: [number, number]; key_hold: [number, number]; field_switch_delay: [number, number]; mistype_chance: number; mistype_delay_notice: [number, number]; mistype_delay_correct: [number, number]; mouse_steps_divisor: number; mouse_min_steps: number; mouse_max_steps: number; mouse_wobble_max: number; mouse_overshoot_chance: number; mouse_overshoot_px: [number, number]; mouse_burst_size: [number, number]; mouse_burst_pause: [number, number]; click_aim_delay_input: [number, number]; click_aim_delay_button: [number, number]; click_hold_input: [number, number]; click_hold_button: [number, number]; click_input_x_range: [number, number]; idle_drift_px: number; idle_pause_range: [number, number]; scroll_delta_base: [number, number]; scroll_delta_variance: number; scroll_pause_fast: [number, number]; scroll_pause_slow: [number, number]; scroll_accel_steps: [number, number]; scroll_decel_steps: [number, number]; scroll_overshoot_chance: number; scroll_overshoot_px: [number, number]; scroll_settle_delay: [number, number]; scroll_target_zone: [number, number]; scroll_pre_move_delay: [number, number]; initial_cursor_x: [number, number]; initial_cursor_y: [number, number]; idle_between_actions: boolean; idle_between_duration: [number, number]; } export type HumanPreset = 'default' | 'careful'; export type HumanActionOptions = Partial & { timeout?: number; force?: boolean; human_config?: Partial; }; /** * Resolve a preset name or partial config into a full HumanConfig. * If `preset` is a string, returns the corresponding built-in config. * Any keys in `overrides` replace the preset values. */ export declare function resolveConfig(preset?: HumanPreset, overrides?: Partial): HumanConfig; /** * Merge a partial overrides object on top of an existing HumanConfig. * Returns a new object — the original ``cfg`` is never mutated. * * Used by per-call overrides such as ``page.type(sel, text, { human_config: { typing_delay: 30 } })`` * so the same patched page can type different fields at different speeds * without re-patching. */ export declare function mergeConfig(cfg: HumanConfig, overrides?: Partial | null): HumanConfig; /** Random float in [min, max]. */ export declare function rand(min: number, max: number): number; /** Random integer in [min, max] (inclusive). */ export declare function randInt(min: number, max: number): number; /** Random value from a [min, max] tuple. */ export declare function randRange(range: [number, number]): number; /** Random integer from a [min, max] tuple. */ export declare function randIntRange(range: [number, number]): number; /** Sleep for `ms` milliseconds. */ export declare function sleep(ms: number): Promise; //# sourceMappingURL=config.d.ts.map