import type { z } from 'zod';
export type SchemaVersionedJsonParseIssue = Readonly<{
    kind: 'invalid-json-shape' | 'unsupported-schema-version';
    message: string;
}>;
export type SchemaVersionedJsonParseResult<TValue> = Readonly<{
    kind: 'absent';
}> | Readonly<{
    kind: 'parsed';
    value: TValue;
}> | Readonly<{
    kind: 'invalid';
    issue: SchemaVersionedJsonParseIssue;
}>;
export declare function parseSchemaVersionedJson<TValue>(input: Readonly<{
    value: unknown;
    schema: z.ZodType<TValue>;
    expectedSchemaVersion: unknown;
    unsupportedSchemaVersionMessage: string;
    invalidShapeMessage: string;
}>): SchemaVersionedJsonParseResult<TValue>;
