import { SparoProfile, ISelection } from '../logic/SparoProfile'; import { TerminalService } from './TerminalService'; import { type LocalStateUpdateAction } from '../logic/LocalState'; export interface ISparoProfileServiceParams { terminalService: TerminalService; sparoProfileFolder: string; } export interface IResolveSparoProfileOptions { localStateUpdateAction: LocalStateUpdateAction; } export declare class SparoProfileService { _profiles: Map; private _loadPromise; private _gitService; private _terminalService; private _localState; private _gitSparseCheckoutService; /** * This function is used for completion */ loadProfileNames(): string[]; loadProfilesAsync(): Promise; getProfileAsync(name: string): Promise; getProfilesAsync(): Promise>; hasProfileInGit(name: string, branch: string): boolean; hasProfileInFS(name: string): boolean; private get _sparoProfileFolder(); /** * Returns the absolute file path where the specified profile name would be stored. * @remarks * It is not guaranteed that the file actually exists. */ getProfileFilepathByName(profileName: string): string; private static _getProfileName; resolveSparoProfileAsync(profile: string, options: IResolveSparoProfileOptions): Promise<{ selections: ISelection[]; includeFolders: string[]; excludeFolders: string[]; }>; /** * preprocess profile related args from CLI parameter */ preprocessProfileArgs({ profilesFromArg, addProfilesFromArg }: { profilesFromArg: string[]; addProfilesFromArg: string[]; }): Promise<{ isNoProfile: boolean; isProfileRestoreFromLocal: boolean; profiles: Set; addProfiles: Set; }>; private _syncRushSelectors; /** * sync local sparse checkout state with specified profiles */ syncProfileState({ profiles, addProfiles, fromProjects, toProjects, isProfileRestoreFromLocal }: { profiles?: Set; addProfiles?: Set; fromProjects?: Set; toProjects?: Set; isProfileRestoreFromLocal?: boolean; }): Promise; } //# sourceMappingURL=SparoProfileService.d.ts.map