import { type IdeId } from "../constants/index.js"; import type { ClonedRegistry } from "../registry/cloner.js"; import type { AddOptions, AssetRequest, AssetType, InstallResult, Manifest, SearchResult } from "../types/index.js"; export declare function expandPreset(manifest: Manifest, presetId: string): AssetRequest[]; export interface InstallSelectionsOptions { force?: boolean; dryRun?: boolean; verbose?: boolean; ide?: IdeId; onStepStart?: (message: string) => void | Promise; onStepDone?: (message: string) => void | Promise; } /** * Install previously selected assets from an already-loaded registry. * Does not clean up the registry — caller owns lifecycle. */ export declare function installFromSelections(registry: ClonedRegistry, selections: AssetRequest[], options?: InstallSelectionsOptions): Promise; export declare function addFromRegistry(repository: string | undefined, options: AddOptions): Promise; export declare function searchRegistry(query: string, repository?: string, options?: { verbose?: boolean; tag?: string; type?: AssetType; }): Promise; /** Resolve a package ref like `laravel-api`, `rule/laravel-api`, or `laravel-api@1.0.0`. */ export declare function resolvePackageRequest(input: string, repository?: string, options?: { verbose?: boolean; }): Promise; /** Expand dependsOn strings (`type/id` or bare id) into AssetRequests. */ export declare function expandDependencies(manifest: Manifest, requests: AssetRequest[]): AssetRequest[]; export declare function installByPackageNames(packages: string[], options?: AddOptions): Promise; export declare function getPackagePreview(input: string, options?: { verbose?: boolean; }): Promise; export declare function listRegistryAssets(repository?: string, options?: { verbose?: boolean; }): Promise<{ registry: string; name: string; version: string; assets: SearchResult[]; local?: boolean; }>; export declare function removeAsset(type: AssetType, id: string, options?: { force?: boolean; yes?: boolean; dryRun?: boolean; verbose?: boolean; ide?: IdeId; }): Promise; export declare function updateAssets(options?: { force?: boolean; yes?: boolean; verbose?: boolean; dryRun?: boolean; ide?: IdeId; }): Promise; //# sourceMappingURL=install-service.d.ts.map