mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-05 16:38:05 -06:00
* Parse excludeDirectories and excludeFiles * Use watch factory in typings installer * Some refactoring for watchFactory * Create Noop watcher if file or directory being watched is excluded * Baselines without using exclude watch options * Baselines including exclude option * Handle exclude options in the system watches * Add test without exclude option for recursive directory watching * Test baselines with exclude option * Always set sysLog * Test for exclude option in server * Add exclude options in the config file and fix the test * Fix host configuration for server * Handle host configuration for watch options * Fix sysLog time log so baselines can be clean * Handle reloadProjects to reload the project from scratch * Ensure that file updates are reflected * Feedback * Feedback
102 lines
3.9 KiB
TypeScript
102 lines
3.9 KiB
TypeScript
declare namespace ts.server {
|
|
export interface TypingInstallerResponse {
|
|
readonly kind: ActionSet | ActionInvalidate | EventTypesRegistry | ActionPackageInstalled | EventBeginInstallTypes | EventEndInstallTypes | EventInitializationFailed;
|
|
}
|
|
|
|
export interface TypingInstallerRequestWithProjectName {
|
|
readonly projectName: string;
|
|
}
|
|
|
|
/* @internal */
|
|
export type TypingInstallerRequestUnion = DiscoverTypings | CloseProject | TypesRegistryRequest | InstallPackageRequest;
|
|
|
|
export interface DiscoverTypings extends TypingInstallerRequestWithProjectName {
|
|
readonly fileNames: string[];
|
|
readonly projectRootPath: Path;
|
|
readonly compilerOptions: CompilerOptions;
|
|
readonly watchOptions?: WatchOptions;
|
|
readonly typeAcquisition: TypeAcquisition;
|
|
readonly unresolvedImports: SortedReadonlyArray<string>;
|
|
readonly cachePath?: string;
|
|
readonly kind: "discover";
|
|
}
|
|
|
|
export interface CloseProject extends TypingInstallerRequestWithProjectName {
|
|
readonly kind: "closeProject";
|
|
}
|
|
|
|
export interface TypesRegistryRequest {
|
|
readonly kind: "typesRegistry";
|
|
}
|
|
|
|
export interface InstallPackageRequest extends TypingInstallerRequestWithProjectName {
|
|
readonly kind: "installPackage";
|
|
readonly fileName: Path;
|
|
readonly packageName: string;
|
|
readonly projectRootPath: Path;
|
|
}
|
|
|
|
/* @internal */
|
|
export interface TypesRegistryResponse extends TypingInstallerResponse {
|
|
readonly kind: EventTypesRegistry;
|
|
readonly typesRegistry: MapLike<MapLike<string>>;
|
|
}
|
|
|
|
export interface PackageInstalledResponse extends ProjectResponse {
|
|
readonly kind: ActionPackageInstalled;
|
|
readonly success: boolean;
|
|
readonly message: string;
|
|
}
|
|
|
|
export interface InitializationFailedResponse extends TypingInstallerResponse {
|
|
readonly kind: EventInitializationFailed;
|
|
readonly message: string;
|
|
readonly stack?: string;
|
|
}
|
|
|
|
export interface ProjectResponse extends TypingInstallerResponse {
|
|
readonly projectName: string;
|
|
}
|
|
|
|
export interface InvalidateCachedTypings extends ProjectResponse {
|
|
readonly kind: ActionInvalidate;
|
|
}
|
|
|
|
export interface InstallTypes extends ProjectResponse {
|
|
readonly kind: EventBeginInstallTypes | EventEndInstallTypes;
|
|
readonly eventId: number;
|
|
readonly typingsInstallerVersion: string;
|
|
readonly packagesToInstall: readonly string[];
|
|
}
|
|
|
|
export interface BeginInstallTypes extends InstallTypes {
|
|
readonly kind: EventBeginInstallTypes;
|
|
}
|
|
|
|
export interface EndInstallTypes extends InstallTypes {
|
|
readonly kind: EventEndInstallTypes;
|
|
readonly installSuccess: boolean;
|
|
}
|
|
|
|
/* @internal */
|
|
export interface InstallTypingHost extends JsTyping.TypingResolutionHost {
|
|
useCaseSensitiveFileNames: boolean;
|
|
writeFile(path: string, content: string): void;
|
|
createDirectory(path: string): void;
|
|
getCurrentDirectory?(): string;
|
|
watchFile?(path: string, callback: FileWatcherCallback, pollingInterval?: number, options?: WatchOptions): FileWatcher;
|
|
watchDirectory?(path: string, callback: DirectoryWatcherCallback, recursive?: boolean, options?: WatchOptions): FileWatcher;
|
|
}
|
|
|
|
export interface SetTypings extends ProjectResponse {
|
|
readonly typeAcquisition: TypeAcquisition;
|
|
readonly compilerOptions: CompilerOptions;
|
|
readonly typings: string[];
|
|
readonly unresolvedImports: SortedReadonlyArray<string>;
|
|
readonly kind: ActionSet;
|
|
}
|
|
|
|
/* @internal */
|
|
export type TypingInstallerResponseUnion = SetTypings | InvalidateCachedTypings | TypesRegistryResponse | PackageInstalledResponse | InstallTypes | InitializationFailedResponse;
|
|
}
|