import type { Effect, Option, PubSub, S } from "effect-app"; import type { InvalidStateError, NotFoundError, OptimisticConcurrencyException } from "effect-app/client/errors"; import type { NonNegativeInt } from "effect-app/Schema/numbers"; import type { FieldValues, IsNever, ResolveFirstLevel } from "../filter/types.js"; import type { QAll, Query, QueryProjection, RawQuery } from "../query.js"; import type { Mapped } from "./legacy.js"; import type { ValidationResult } from "./validation.js"; export interface Repository { readonly itemType: ItemType; readonly idKey: IdKey; readonly find: (id: T[IdKey]) => Effect.Effect, never, RSchema>; readonly all: Effect.Effect; readonly saveAndPublish: (items: Iterable, events?: Iterable) => Effect.Effect; readonly changeFeed: PubSub.PubSub<[T[], "save" | "remove"]>; readonly removeAndPublish: (items: Iterable, events?: Iterable) => Effect.Effect; readonly removeById: (idOrIds: T[IdKey] | ReadonlyArray) => Effect.Effect; readonly queryRaw: (schema: S.Codec, raw: RawQuery) => Effect.Effect; /** * Explicitly seed a namespace. Primary is seeded eagerly on initialization. * Non-primary namespaces must be seeded explicitly before use. */ readonly seedNamespace: (namespace: string) => Effect.Effect; readonly query: { (q: (initial: Query) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => $H, q9: (_: $H) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => $H, q9: (_: $H) => $I, q10: (_: $I) => QueryProjection): Effect.Effect) | (TType extends "count" ? never : S.SchemaError), Exclude | RSchema>; (q: (initial: Query) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => $H, q9: (_: $H) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; (q1: (initial: Query) => $A, q2: (_: $A) => $B, q3: (_: $B) => $C, q4: (_: $C) => $D, q5: (_: $D) => $E, q6: (_: $E) => $F, q7: (_: $F) => $G, q8: (_: $G) => $H, q9: (_: $H) => $I, q10: (_: $I) => QAll, R, TType, E>): Effect.Effect : RefineTHelper, TType extends "many" ? never : NotFoundError, Exclude | RSchema>; }; /** @deprecated use query */ readonly mapped: Mapped; /** * Validates a random sample of repository items by applying jitM and schema decode. * Useful for testing that migrations and schema changes work correctly on existing data. */ readonly validateSample: (options?: { /** percentage of items to sample (0.0-1.0), default 0.1 (10%) */ percentage?: number; /** optional maximum number of items to sample */ maxItems?: number; }) => Effect.Effect; } type DistributeQueryIfExclusiveOnArray = [Exclusive] extends [true] ? T extends any ? RefineTHelper extends infer R ? IsNever extends true ? never : readonly R[] : never : never : readonly RefineTHelper[]; type NullableRefined = { [k in keyof T]: [null] extends [T[k]] ? [null] extends [Extract[k]] ? T[k] : Exclude : T[k]; }; type ShouldRecursiveExtractTagged = true extends { [k in keyof T]: "_tag" extends keyof T[k] ? k extends keyof EncodedRefined ? "_tag" extends keyof EncodedRefined[k] ? true : false : false : false; }[keyof T] ? true : false; type RecursiveExtractTagged = ShouldRecursiveExtractTagged extends true ? { [k in keyof T]: "_tag" extends keyof T[k] ? k extends keyof EncodedRefined ? "_tag" extends keyof EncodedRefined[k] ? ExtractTagged : T[k] : T[k] : T[k]; } : T; type ExtractTagged_ = EncodedRefined extends { _tag: string; } ? T extends { _tag: string; } ? Extract : T : T; type ExtractTagged = ExtractTagged_ extends infer R ? RecursiveExtractTagged, EncodedRefined> : never; type ShouldRecursiveExtractIded = true extends { [k in keyof T]: "id" extends keyof T[k] ? k extends keyof EncodedRefined ? "id" extends keyof EncodedRefined[k] ? true : false : false : false; }[keyof T] ? true : false; type RecusiveExtractIded = ShouldRecursiveExtractIded extends true ? { [k in keyof T]: "id" extends keyof T[k] ? k extends keyof EncodedRefined ? "id" extends keyof EncodedRefined[k] ? ExtractIded : T[k] : T[k] : T[k]; } : T; type ExtractIded_ = EncodedRefined extends { id: string; } ? T extends { id: string; } ? Extract : T : T; type ExtractIded = ExtractIded_ extends infer R ? RecusiveExtractIded, EncodedRefined> : never; export type RefineTHelper = ResolveFirstLevel, EncodedRefined>, EncodedRefined>>; export {}; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL01vZGVsL1JlcG9zaXRvcnkvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDM0QsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLDhCQUE4QixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDaEgsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDL0QsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2pGLE9BQU8sS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6RSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDekMsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUV2RCxNQUFNLFdBQVcsVUFBVSxDQUN6QixDQUFDLEVBQ0QsT0FBTyxTQUFTLFdBQVcsRUFDM0IsR0FBRyxFQUNILFFBQVEsU0FBUyxNQUFNLEVBQ3ZCLEtBQUssU0FBUyxNQUFNLENBQUMsRUFDckIsT0FBTyxFQUNQLFFBQVEsRUFDUixTQUFTLEdBQUcsS0FBSztJQUVqQixRQUFRLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQTtJQUMzQixRQUFRLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQTtJQUNyQixRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxD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