/** Local attachment roles/subscriptions authorize access; only the target's
 * synced primary ID identifies a task store on another machine. */
export declare function taskStores(base: string): {
    id: string;
    name: string;
    path: string;
    role: import("../store-registry.js").StoreRole;
    remote?: string;
    sync: import("../store-registry.js").StoreSyncMode;
    projects?: string[];
    available?: boolean;
    taskStoreId: string | undefined;
}[];
export declare function taskStoreProjects(store: ReturnType<typeof taskStores>[number]): string[];
export declare function taskStoreHasProject(store: ReturnType<typeof taskStores>[number], project: string): boolean;
/** The directory never snapshots Git or returns its stderr/remote/path. Only
 * bounded, read-only Git queries and the existing credential-stripping parser. */
export declare function taskStoreRepositoryIdentity(store: string): Promise<{
    repository: string;
    branch: string;
} | undefined>;
