@sussudio/platform
Version:
Internal APIs for VS Code's service injection the base services.
84 lines (82 loc) • 3.4 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { URI } from '@sussudio/base/common/uri.mjs';
import { NativeParsedArgs } from './argv.mjs';
import { ExtensionKind, IDebugParams, IExtensionHostDebugParams, INativeEnvironmentService } from './environment.mjs';
import { IProductService } from '../../product/common/productService.mjs';
export declare const EXTENSION_IDENTIFIER_WITH_LOG_REGEX: RegExp;
export interface INativeEnvironmentPaths {
/**
* The user data directory to use for anything that should be
* persisted except for the content that is meant for the `homeDir`.
*
* Only one instance of VSCode can use the same `userDataDir`.
*/
userDataDir: string;
/**
* The user home directory mainly used for persisting extensions
* and global configuration that should be shared across all
* versions.
*/
homeDir: string;
/**
* OS tmp dir.
*/
tmpDir: string;
}
export declare abstract class AbstractNativeEnvironmentService implements INativeEnvironmentService {
private readonly _args;
private readonly paths;
protected readonly productService: IProductService;
readonly _serviceBrand: undefined;
get appRoot(): string;
get userHome(): URI;
get userDataPath(): string;
get appSettingsHome(): URI;
get tmpDir(): URI;
get cacheHome(): URI;
get stateResource(): URI;
get userRoamingDataHome(): URI;
get userDataSyncHome(): URI;
get logsPath(): string;
get userDataSyncLogResource(): URI;
get editSessionsLogResource(): URI;
get sync(): 'on' | 'off' | undefined;
get machineSettingsResource(): URI;
get workspaceStorageHome(): URI;
get localHistoryHome(): URI;
get keyboardLayoutResource(): URI;
get argvResource(): URI;
get isExtensionDevelopment(): boolean;
get untitledWorkspacesHome(): URI;
get installSourcePath(): string;
get builtinExtensionsPath(): string;
get extensionsDownloadLocation(): URI;
get extensionsPath(): string;
get extensionDevelopmentLocationURI(): URI[] | undefined;
get extensionDevelopmentKind(): ExtensionKind[] | undefined;
get extensionTestsLocationURI(): URI | undefined;
get disableExtensions(): boolean | string[];
get debugExtensionHost(): IExtensionHostDebugParams;
get debugRenderer(): boolean;
get isBuilt(): boolean;
get verbose(): boolean;
get logLevel(): string | undefined;
get extensionLogLevel(): [string, string][] | undefined;
get serviceMachineIdResource(): URI;
get crashReporterId(): string | undefined;
get crashReporterDirectory(): string | undefined;
get telemetryLogResource(): URI;
get disableTelemetry(): boolean;
get disableWorkspaceTrust(): boolean;
get policyFile(): URI | undefined;
editSessionId: string | undefined;
get continueOn(): string | undefined;
set continueOn(value: string | undefined);
get args(): NativeParsedArgs;
constructor(_args: NativeParsedArgs, paths: INativeEnvironmentPaths, productService: IProductService);
}
export declare function parseExtensionHostPort(args: NativeParsedArgs, isBuild: boolean): IExtensionHostDebugParams;
export declare function parsePtyHostPort(args: NativeParsedArgs, isBuild: boolean): IDebugParams;