import { type CommandContext } from "@velum-labs/routekit-cli-core"; import type { SelectOption } from "@velum-labs/routekit-cli-ui"; import { type RouterConfig } from "@velum-labs/routekit-config"; import { type ProviderSource } from "@velum-labs/routekit-provider-core"; import { RouteKitFailure } from "@velum-labs/routekit-runtime/effect"; import { Effect } from "effect"; import type { LaunchProviderId } from "../../launch-support.js"; export declare const FIRST_LAUNCH_API_PROVIDER_MODULES: string[]; export declare const SETUP_SUBSCRIPTION_IDS: readonly ["codex", "claude-code"]; export type SetupApiProviderId = LaunchProviderId; export type SetupSubscriptionId = (typeof SETUP_SUBSCRIPTION_IDS)[number]; export type SetupRouteId = SetupApiProviderId | SetupSubscriptionId; export declare function setupCandidateConfig(apiProviders: readonly SetupApiProviderId[]): RouterConfig; export declare function credentialDescription(provider: SetupApiProviderId): string; export type SetupPreflightResult = { provider: SetupApiProviderId; models: string[]; }; export declare function preflightSetupApiProvider(provider: SetupApiProviderId, options?: { env?: NodeJS.ProcessEnv; source?: ProviderSource; }): Effect.Effect<{ provider: string; models: string[]; }, RouteKitFailure, any>; export declare function preferredModelOptions(models: ReadonlyArray<{ id: string; }>, input: { currentDefault?: string; firstSelectedRoute?: SetupRouteId; }): Array>; export declare const setupRouteKit: (input: { browser?: boolean; context: CommandContext; runtime: Readonly<{ stdout: Pick; stderr: Pick; env: Readonly; platform: NodeJS.Platform; arch: string; nodeVersion: string; }>; }) => Effect.Effect;