import { type RemoteResourceEffect } from "../resource.js"; import { type RemoteLiveStream } from "../../live.js"; import type { EffectRemoteQueryUpdateBrand } from "./types.js"; import { Effect } from "effect"; type RemoteInput = undefined extends Input ? Input | void : Input; type DecodePayload = (value: unknown) => Output; type QueryAdapterMode = "standard" | "batch"; type NativeQueryFactory = ((input: RemoteInput) => unknown) | { readonly load: (input: RemoteInput) => unknown; }; type RemoteQueryEffect = EffectRemoteQueryUpdateBrand & RemoteResourceEffect & { readonly refresh: () => Effect.Effect; readonly set: (value: Output) => void; readonly withOverride: (update: (current: Output) => Output) => unknown; }; /** Adapts a generated SvelteKit query to SER's Effect-based client ABI. */ export declare function create_remote_query_adapter(native_factory: NativeQueryFactory, decode_payload: DecodePayload, _base?: string, mode?: QueryAdapterMode): EffectRemoteQueryUpdateBrand & ((input: RemoteInput) => RemoteQueryEffect); export declare function create_remote_query_adapter(native_factory: NativeQueryFactory, decode_payload: (value: unknown) => unknown, _base?: string, mode?: QueryAdapterMode): EffectRemoteQueryUpdateBrand & ((input: RemoteInput) => RemoteQueryEffect); /** Adapts a generated SvelteKit live query to SER's Effect-based client ABI. */ export declare function create_remote_live_query_adapter(native_factory: unknown, _decode_payload: (value: unknown) => unknown, _base?: string): EffectRemoteQueryUpdateBrand & ((input: RemoteInput) => RemoteLiveStream); export {};