/** * Internal runtime validation for dynamically loaded extension boundaries. * * Static TypeScript contracts disappear at runtime. These helpers validate the * small set of values that cross dynamic module and registry boundaries while * containing hostile accessors behind contextual TypeErrors. */ export type ZeroArgumentConstructor = new () => T; /** Require a non-empty string without hidden surrounding whitespace. */ export declare function assertCanonicalNonEmptyString(value: unknown, label: string): asserts value is string; /** Read and validate a zero-argument constructor from a dynamic module. */ export declare function getConstructibleModuleExport(extensionModule: unknown, moduleName: string, exportName: string): ZeroArgumentConstructor; /** Validate the required method surface of a dynamically constructed value. */ export declare function assertRequiredMethods(instance: unknown, moduleName: string, exportName: string, methodNames: readonly string[]): void; /** Capture a registry entry's identity exactly once. */ export declare function captureRegistrationId(value: unknown, registrationName: string): string; /** Require a callable method on a registry entry. */ export declare function assertRegistrationMethod(value: unknown, registrationName: string, methodName: string): void; /** Validate an optional method when a registry entry supplies it. */ export declare function assertOptionalRegistrationMethod(value: unknown, registrationName: string, methodName: string): void; //# sourceMappingURL=runtime-validation.d.ts.map