@shutootaki/gwm
Version:
git worktree manager CLI
26 lines • 911 B
TypeScript
/**
* Provider 共通ベース関数
* Git リポジトリ依存のプロバイダを簡潔に定義するためのファクトリー
*/
import type { CompletionCandidate } from './types.js';
/**
* プロバイダ設定
*/
export interface ProviderConfig<T> {
/** プロバイダID(キャッシュキーに使用) */
id: string;
/** データ取得関数 */
fetch: () => Promise<T[]>;
/** データを候補に変換する関数 */
transform: (item: T) => CompletionCandidate;
}
/**
* Git リポジトリ依存のプロバイダを作成
*
* 共通処理:
* - Git リポジトリ外では空配列を返す
* - キャッシュを活用(1秒TTL)
* - エラー時は空配列を返す(補完が壊れないように)
*/
export declare function createGitProvider<T>(config: ProviderConfig<T>): () => Promise<CompletionCandidate[]>;
//# sourceMappingURL=base.d.ts.map