import type { z } from "zod"; import type { SearchQuerySpec, RecordListResponse, RecordMutationAck, RecordResponse, SearchResultsResponse } from "./types"; import type { SharedConfig } from "./types"; export type CollectionHandle = { create: (data: T) => Promise; update: (id: string, data: Partial) => Promise; replace: (id: string, data: T) => Promise; delete: (id: string) => Promise; get: (id: string) => Promise; list: () => Promise; query: (spec: SearchQuerySpec, options?: { fullResultObjects?: boolean; }) => Promise; validate: (data: unknown) => T; }; export declare function collection(config: SharedConfig, name: string, schema: TSchema, options?: { auto_create?: boolean; }): CollectionHandle>;