import type { ContractSchemaNode } from '../openapi-document/contract-schema-types.mts'; import type { ContractValidationIssue } from './types.mts'; export type ValidationContext = { definitions: Record; issues: ContractValidationIssue[]; }; export declare function requireType(valid: boolean, expected: string, value: unknown, path: string, context: ValidationContext): void; export declare function addIssue(context: ValidationContext, path: string, kind: ContractValidationIssue['kind'], message: string): void; export declare function addUnexpectedIssue(context: ValidationContext, path: string): void; export declare function propertyPath(path: string, property: string): string; export declare function isObject(value: unknown): value is Record; export declare function collectObjectShape(node: ContractSchemaNode, definitions: Record, properties: Set, addAdditional: (schema: ContractSchemaNode) => void): void;