import type { Effect, Schema } from "effect"; import type { DdfHttpError } from "./errors.js"; export type DdfResponseSchema = Schema.Decoder; export interface DdfODataListQuery { readonly select?: ReadonlyArray; readonly filter?: string; readonly count?: boolean; readonly top?: number; readonly skip?: number; readonly orderby?: string | ReadonlyArray; } export interface DdfODataGetQuery { readonly select?: ReadonlyArray; } export interface DdfReplicationQuery { readonly select?: ReadonlyArray; readonly count?: boolean; readonly filter?: string; readonly orderby?: string | ReadonlyArray; } export interface DdfRequestOptions { readonly method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE"; readonly headers?: Readonly>; readonly json?: unknown; readonly body?: BodyInit | null; } export interface DdfHttpApi { requestJson: (path: string, init?: DdfRequestOptions, schema?: DdfResponseSchema) => Effect.Effect; listOData: (path: string, query?: DdfODataListQuery, schema?: DdfResponseSchema) => Effect.Effect; getOData: (path: string, key: string | number, query?: DdfODataGetQuery, schema?: DdfResponseSchema) => Effect.Effect; replicateIdentifiers: (path: string, query?: DdfReplicationQuery, schema?: DdfResponseSchema) => Effect.Effect; paginateOData: (first: string) => Effect.Effect, DdfHttpError>; } //# sourceMappingURL=types.d.ts.map