import { type CustomProviderStores } from '../../../domain/pi-providers/index.js'; import type { CommandResult } from './command-context.js'; export type CustomProviderRequest = { kind: 'list'; } | { kind: 'add'; name: string; api: string; upstreamUrl: string; models: string[]; } | { kind: 'remove'; name: string; } | { kind: 'usage'; }; /** * `!login custom [list | add | remove ]`. * * There is deliberately no key argument: a chat message is a durable, widely readable transcript, * and an upstream secret does not belong in one. A provider added here routes through the gateway * with the caller's own key passed through; to attach a stored key use the CLI (`--key -` reads it * from stdin) or the Web settings page, both of which keep the secret off any transcript. */ export declare function parseCustomProviderRequest(args: string[]): CustomProviderRequest; export declare function handleCustomProviderCommand(args: string[], stores?: CustomProviderStores): Promise;