export declare const requiredPqsRelations: readonly ["__contracts", "__contract_tpe", "__events", "__exercises", "__exercise_tpe", "__packages", "__transactions", "__watermark"]; export type PqsRelation = (typeof requiredPqsRelations)[number]; export interface PqsRelationEdge { readonly target: PqsRelation; readonly sourceColumn: string; readonly targetColumn: string; readonly cardinality: "one" | "many"; readonly nullable: boolean; } export declare const pqsRelationEdges: Readonly>>>>; export interface PqsRelationMetadata { readonly fields: Readonly>; readonly uniqueKeys: readonly (readonly string[])[]; readonly numericFields: readonly string[]; readonly arrayFields: readonly string[]; readonly dateFields: readonly string[]; readonly binaryFields: readonly string[]; readonly stringFields?: readonly string[]; } export declare const pqsRelationMetadata: Readonly>; export declare const requiredPqsColumns: Readonly>; export declare class PqsSchemaProfileV1 { readonly schema: string; constructor(schema?: string); relation(relation: PqsRelation): string; static jsonField(relation: PqsRelation, field: string): boolean; static bucketField(relation: PqsRelation, field: string): boolean; } export interface PqsSchemaClient { query(query: string, values: readonly unknown[]): Promise<{ readonly rows: readonly Record[]; }>; } export declare function validatePqsSchemaAsync(client: PqsSchemaClient, profile: PqsSchemaProfileV1): Promise; export declare function assertPqsSchemaIdentifier(schema: string): void;