import type { ComponentKind, ComponentManifest } from "../manifest/types.js"; import type { StaticLiteral } from "./static-expression.js"; export type UnknownRecord = Record; export interface NormalizedContract { key: string; exportName: string; importPath: string; kind: ComponentKind; props: UnknownRecord; events: UnknownRecord; slots: UnknownRecord; models: UnknownRecord; coverage: { props: boolean; events: boolean; slots: boolean; models: boolean; }; } export interface ComponentBinding { localName: string; importedName: string; contract: NormalizedContract; } export declare function isRecord(value: unknown): value is UnknownRecord; export declare function normalizeApiName(value: string): string; export declare function normalizeComponentName(value: string): string; export declare function isAllowedComponentAttribute(name: string): boolean; export declare function normalizeManifest(manifest: ComponentManifest): NormalizedContract[]; export declare function findMember(members: UnknownRecord, requestedName: string): { name: string; metadata: unknown; } | undefined; export declare function enumValues(metadata: unknown): readonly StaticLiteral[] | undefined; export declare function isRequiredMember(metadata: unknown): boolean; export declare function hasEnumValue(values: readonly StaticLiteral[], actual: StaticLiteral): boolean; //# sourceMappingURL=contracts.d.ts.map