import * as fs from 'fs' ; export enum Architecture { Unknown = 1 , x86 = 2 , x64 = 3 } export const IPlatformService = Symbol . for ( 'IPlatformService' ) ; export interface IPlatformService { isWindows : boolean ; isMac : boolean ; isLinux : boolean ; is64bit : boolean ; pathVariableName : 'Path' | 'PATH' ; } export const IFileSystem = Symbol . for ( 'IFileSystem' ) ; export interface IFileSystem { directorySeparatorChar : string ; objectExistsAsync ( path , statCheck ) : Promise < boolean > ; fileExistsAsync ( path ) : Promise < boolean > ; directoryExistsAsync ( path ) : Promise < boolean > ; createDirectoryAsync ( path ) : Promise < void > ; getSubDirectoriesAsync ( rootDir ) : Promise < string [ ] > ; arePathsSame ( path1 , path2 ) : boolean ; }