SYMBOL INDEX (75 symbols across 13 files) FILE: src/commands/pr.ts type GitProvider (line 14) | type GitProvider = 'github' | 'gitlab' | 'bitbucket' | 'azure'; type RepoInfo (line 16) | interface RepoInfo { function parseRemoteUrl (line 22) | function parseRemoteUrl(remoteUrl: string): RepoInfo { function getPrUrl (line 48) | function getPrUrl( FILE: src/commands/update.ts type PackageManagerInfo (line 11) | interface PackageManagerInfo { function getDistTag (line 19) | function getDistTag(version: string): string { function detectPackageManager (line 31) | function detectPackageManager(distTag: string): PackageManagerInfo { function getLatestVersion (line 85) | async function getLatestVersion(distTag: string): Promise { FILE: src/feature/models.ts type ModelObject (line 11) | interface ModelObject { type CacheEntry (line 17) | interface CacheEntry { constant CACHE_DURATION (line 22) | const CACHE_DURATION = 60 * 60 * 1000; type FetchModelsOptions (line 71) | interface FetchModelsOptions { FILE: src/feature/providers/base.ts type ProviderDef (line 4) | type ProviderDef = { class Provider (line 17) | class Provider { method constructor (line 21) | constructor(def: ProviderDef, config: ValidConfig) { method name (line 26) | get name(): string { method displayName (line 30) | get displayName(): string { method getDefinition (line 34) | getDefinition(): ProviderDef { method setup (line 38) | async setup(): Promise<[string, string][]> { method getModels (line 81) | async getModels(): Promise<{ models: string[]; error?: string }> { method getApiKey (line 103) | getApiKey(): string | undefined { method getBaseUrl (line 107) | getBaseUrl(): string { method getDefaultModel (line 114) | getDefaultModel(): string { method getHighlightedModels (line 118) | getHighlightedModels(): string[] { method getHeaders (line 122) | getHeaders(): Record | undefined { method validateConfig (line 126) | validateConfig(): { valid: boolean; errors: string[] } { FILE: src/feature/providers/index.ts function getProvider (line 9) | function getProvider(config: ValidConfig): Provider | null { function getAvailableProviders (line 15) | function getAvailableProviders(): { value: string; label: string }[] { function getProviderBaseUrl (line 22) | function getProviderBaseUrl(providerName: string): string { function getProviderDef (line 27) | function getProviderDef(providerName: string): ProviderDef | undefined { FILE: src/utils/auto-update.ts type AutoUpdateOptions (line 6) | interface AutoUpdateOptions { function parseVersion (line 14) | function parseVersion(version: string): { function compareVersions (line 45) | function compareVersions(v1: string, v2: string): number { function fetchLatestVersion (line 71) | async function fetchLatestVersion( function checkIfGlobalInstallation (line 97) | async function checkIfGlobalInstallation(packageName: string): Promise { FILE: src/utils/config-types.ts type CommitType (line 5) | type CommitType = (typeof commitTypes)[number]; method OPENAI_API_KEY (line 18) | OPENAI_API_KEY(key?: string) { method OPENAI_BASE_URL (line 21) | OPENAI_BASE_URL(key?: string) { method OPENAI_MODEL (line 24) | OPENAI_MODEL(key?: string) { method locale (line 27) | locale(locale?: string) { method generate (line 39) | generate(count?: string) { method type (line 49) | type(type?: string) { method proxy (line 60) | proxy(url?: string) { method timeout (line 68) | timeout(timeout?: string) { method 'max-length' (line 80) | 'max-length'(maxLength?: string) { type ConfigKeys (line 95) | type ConfigKeys = keyof typeof configParsers; type RawConfig (line 97) | type RawConfig = { type ValidConfig (line 101) | type ValidConfig = { FILE: src/utils/error.ts class KnownError (line 5) | class KnownError extends Error {} FILE: src/utils/openai.ts type GenerateCommitMessageOptions (line 85) | type GenerateCommitMessageOptions = { type GenerateCommitDescriptionOptions (line 240) | type GenerateCommitDescriptionOptions = { type CombineCommitMessagesOptions (line 353) | type CombineCommitMessagesOptions = { FILE: tests/specs/openai/index.ts function runGenerateCommitMessage (line 133) | async function runGenerateCommitMessage( FILE: tests/specs/togetherai/index.ts function runGenerateCommitMessage (line 55) | async function runGenerateCommitMessage( FILE: vscode-extension/src/extension.ts constant TIMEOUT_MS (line 9) | const TIMEOUT_MS = 15000; constant PACKAGE_NAME (line 11) | const PACKAGE_NAME = 'aicommits'; function activate (line 13) | function activate(context: vscode.ExtensionContext) { function checkCliOnActivation (line 65) | async function checkCliOnActivation() { function getCliVersion (line 85) | async function getCliVersion(): Promise { function fetchLatestVersion (line 97) | async function fetchLatestVersion(distTag: string): Promise { function isCliInstalled (line 202) | async function isCliInstalled(): Promise { function installCli (line 222) | async function installCli(): Promise { function ensureCliInstalled (line 237) | async function ensureCliInstalled(): Promise { function generateCommitMessage (line 259) | async function generateCommitMessage( function openSetupTerminal (line 343) | function openSetupTerminal() { function openTerminal (line 356) | function openTerminal(command: string) { function runCli (line 369) | function runCli( function commitWithMessage (line 418) | async function commitWithMessage(repo: any, message: string) { function deactivate (line 429) | function deactivate() {}