@salesforce/core
Version:
Core libraries to interact with SFDX projects, orgs, and APIs.
37 lines (36 loc) • 1.42 kB
TypeScript
import { ConfigFile } from './configFile';
import { SfOrgs, SfOrg, SfInfo, SfInfoKeys } from './globalInfoConfig';
interface Handler<T extends SfInfoKeys> {
sfKey: T;
merge: (sfData: SfInfo) => Promise<Partial<SfInfo>>;
migrate: () => Promise<Pick<SfInfo, T>>;
write: (latest: SfInfo, original: SfInfo) => Promise<void>;
}
interface Changes<T> {
changed: T;
deleted: string[];
}
export declare class SfdxDataHandler {
handlers: AuthHandler[];
private original;
write(latest?: SfInfo): Promise<void>;
merge(sfData?: SfInfo): Promise<SfInfo>;
private setOriginal;
}
declare abstract class BaseHandler<T extends SfInfoKeys> implements Handler<T> {
abstract sfKey: T;
merge(sfData?: SfInfo): Promise<Partial<SfInfo>>;
abstract migrate(): Promise<Pick<SfInfo, T>>;
abstract write(latest: SfInfo, original: SfInfo): Promise<void>;
}
export declare class AuthHandler extends BaseHandler<SfInfoKeys.ORGS> {
private static authFilenameFilterRegEx;
sfKey: typeof SfInfoKeys.ORGS;
migrate(): Promise<Pick<SfInfo, SfInfoKeys.ORGS>>;
write(latest: SfInfo, original: SfInfo): Promise<void>;
findChanges(latest: SfInfo, original: SfInfo): Promise<Changes<SfOrgs>>;
createAuthFileConfig(username: string): Promise<ConfigFile<ConfigFile.Options>>;
listAllAuthFiles(): Promise<string[]>;
listAllAuthorizations(): Promise<SfOrg[]>;
}
export {};