/**
 * profile.ts — C19 Profile inheritance chain (v1) — TypeScript surface.
 *
 * The canonical Zod schema lives in `src/cli/profile/schema.mjs` so the CLI
 * kernel can load it from raw Node without relying on experimental TS
 * stripping. This file re-exports the same schema values and adds TS types
 * inferred via `z.infer`, giving TypeScript consumers (tests, type-safe call
 * sites) the same surface the CLI sees.
 *
 * See `packages/framework/docs/profiles.md` for the end-user contract and
 * `src/cli/profile/{parse,resolve}.mjs` for the runtime counterparts.
 */
import { z } from 'zod';
import { ObligationSchema, ProfileSchema, validateProfile } from '../cli/profile/schema.mjs';
export { ObligationSchema, ProfileSchema, validateProfile };
export type Obligation = z.infer<typeof ObligationSchema>;
export type Profile = z.infer<typeof ProfileSchema>;
export type ResolvedProfile = {
    name: string;
    extends?: string;
    description?: string;
    obligations?: Obligation[];
    conventions?: Record<string, string>;
    tooling?: Record<string, string>;
};
export declare const profileJsonSchema: z.core.ZodStandardJSONSchemaPayload<z.ZodObject<{
    name: z.ZodString;
    extends: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    obligations: z.ZodOptional<z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        title: z.ZodString;
        text: z.ZodString;
        severity: z.ZodEnum<{
            [x: string]: string;
        }>;
    }, z.core.$strict>>>;
    conventions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    tooling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
    merge_obligations: z.ZodOptional<z.ZodBoolean>;
    merge_conventions: z.ZodOptional<z.ZodBoolean>;
    merge_tooling: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strict>>;
//# sourceMappingURL=profile.d.ts.map