import type { Plugin } from "vite"; /** * Options for the {@link effect} Vite plugin. * * @example * ```ts * const options: EffectOptions = { debug: true }; * const plugins = effect(options); * ``` * * @since 2.0.0 */ export interface EffectOptions { /** Whether to emit debug logging in the generated remote client module. */ debug?: boolean; } /** * Vite plugin for SvelteKit. The server import plugin rewrites server-side * imports to the server entrypoint; the remote client plugin wraps SvelteKit's * generated client remote exports in Effect-returning adapters. * * @example * ```ts * import { effect } from "svelte-effect-runtime/compiler"; * import { sveltekit } from "@sveltejs/kit/vite"; * * export default defineConfig({ plugins: [effect(), sveltekit()] }); * ``` * * @since 2.0.0 * @param options - Optional configuration. * @returns Vite plugins that integrate the runtime with SvelteKit. */ export declare function effect(options?: EffectOptions): Plugin[]; /** * Rewrites SvelteKit's generated client remote module from: * * `export const get_post = __remote.query("hash/get_post")` * * into an Effect-aware wrapper around the same native function. * * @example * ```ts * const rewritten = await rewrite_remote_client_exports(remote_module_code); * ``` * * @since 2.0.0 * @param code - The generated client remote module code. * @param options - Optional plugin options. * @returns A promise that resolves to the rewritten module code. * @internal */ export declare function rewrite_remote_client_exports(code: string, options?: EffectOptions): Promise;