/**
 * Generated `ComponentApi` utility.
 *
 * THIS CODE IS AUTOMATICALLY GENERATED.
 *
 * To regenerate, run `npx convex dev`.
 * @module
 */
import type { FunctionReference } from "convex/server";
/**
 * A utility for referencing a Convex component's exposed API.
 *
 * Useful when expecting a parameter like `components.myComponent`.
 * Usage:
 * ```ts
 * async function myFunction(ctx: QueryCtx, component: ComponentApi) {
 *   return ctx.runQuery(component.someFile.someQuery, { ...args });
 * }
 * ```
 */
export type ComponentApi<Name extends string | undefined = string | undefined> = {
    public: {
        cancel: FunctionReference<"mutation", "internal", {
            runId: string;
        }, boolean, Name>;
        cleanup: FunctionReference<"mutation", "internal", {
            runId: string;
        }, any, Name>;
        start: FunctionReference<"mutation", "internal", {
            functionArgs: any;
            functionHandle: string;
            options: {
                base: number;
                initialBackoffMs: number;
                logLevel: "DEBUG" | "INFO" | "WARN" | "ERROR";
                maxFailures: number;
                onComplete?: string;
                runAfter?: number;
                runAt?: number;
            };
        }, string, Name>;
        status: FunctionReference<"query", "internal", {
            runId: string;
        }, {
            type: "inProgress";
        } | {
            result: {
                returnValue: any;
                type: "success";
            } | {
                error: string;
                type: "failed";
            } | {
                type: "canceled";
            };
            type: "completed";
        }, Name>;
    };
};
//# sourceMappingURL=component.d.ts.map