export interface Assertion { source: Source; property: string; comparison: string; target: string; regex: string | null; } export declare function toAssertion(source: Source, comparison: Comparison, target?: Target, property?: string, regex?: string | null): Assertion; export declare class NumericAssertionBuilder { source: Source; property?: Property; constructor(source: Source, property?: Property); equals(target: number): Assertion; notEquals(target: number): Assertion; lessThan(target: number): Assertion; greaterThan(target: number): Assertion; } /** * General assertion builder supporting string / number / boolean targets. * * The optional `TargetType` parameter narrows the value-comparison methods * (`equals`, `notEquals`, `lessThan`, `greaterThan`) * to a specific set of values — e.g. `TlsVersionValue` for TLS version * assertions. When omitted it defaults to `string | number | boolean`, * preserving full backward compatibility. */ export declare class GeneralAssertionBuilder { source: Source; property?: string; regex?: string; constructor(source: Source, property?: string, regex?: string); equals(target: TargetType): Assertion; notEquals(target: TargetType): Assertion; hasKey(target: string): Assertion; notHasKey(target: string): Assertion; hasValue(target: TargetType): Assertion; notHasValue(target: TargetType): Assertion; isEmpty(): Assertion; notEmpty(): Assertion; lessThan(target: TargetType): Assertion; greaterThan(target: TargetType): Assertion; contains(target: string): Assertion; notContains(target: string): Assertion; isNull(): Assertion; isNotNull(): Assertion; }