@hpcc-js/comms
Version:
hpcc-js - Communications
102 lines (101 loc) • 3.45 kB
TypeScript
import { Workspace } from "./eclMeta.ts";
export declare class Version {
readonly prefix: string;
readonly major: number;
readonly minor: number;
readonly patch: number;
readonly postfix: string;
constructor(build: string);
parse(build: string): void;
exists(): boolean;
compare(other: Version): number;
toString(): string;
}
interface IExecFile {
code: number;
stderr: string;
stdout: string;
}
export interface IECLErrorWarning {
filePath: string;
line: number;
col: number;
msg: string;
severity: string;
}
export declare class Errors {
protected _checked: string[];
protected errWarn: IECLErrorWarning[];
protected errOther: string[];
constructor(checked: string[]);
checked(): string[];
all(): IECLErrorWarning[];
errors(): IECLErrorWarning[];
hasError(): boolean;
warnings(): IECLErrorWarning[];
hasWarning(): boolean;
info(): IECLErrorWarning[];
hasOther(): boolean;
unknown(): string[];
hasUnknown(): boolean;
}
export declare class EclccErrors extends Errors {
constructor(stdErr: string, checked: string[]);
}
export declare class EnvchkErrors extends Errors {
private _lines;
constructor(filePath: string, stdErr: string, checked: string[]);
locate(path: string): [number, number];
}
export declare function walkXmlJson(node: any, callback: (key: string, childNode: any, stack: any[]) => void, stack?: any[]): void;
export declare class LocalWorkunit {
jsonWU: any;
constructor(jsonWU: any);
bpGetValidLocations(filePath: any): any[];
}
export interface IArchive {
content: string;
err: EclccErrors;
}
export interface IBundle {
name: string;
description: string;
url: string;
props?: {
[key: string]: string | number | boolean;
};
}
export declare class ClientTools {
readonly eclccPath: string;
readonly envchkPath: string;
readonly eclBundlePath: string;
readonly binPath: string;
protected cwd: string;
protected includeFolders: string[];
protected _legacyMode: boolean;
protected _args: string[];
protected _version: Version;
constructor(eclccPath: string, cwd?: string, includeFolders?: string[], legacyMode?: boolean, args?: string[], version?: Version);
clone(cwd?: string, includeFolders?: string[], legacyMode?: boolean, args?: string[]): ClientTools;
exists(filePath: string): boolean;
args(additionalItems?: string[]): string[];
version(): Promise<Version>;
versionSync(): Version;
_paths: {};
paths(): Promise<{}>;
private loadXMLDoc;
createWU(filename: string): Promise<LocalWorkunit>;
createArchive(filename: string): Promise<IArchive>;
attachWorkspace(): Workspace;
fetchMeta(filePath: string): Promise<Workspace>;
syntaxCheck(filePath: string, args?: string[]): Promise<Errors>;
envCheck(filePath: string, args?: string[]): Promise<Errors>;
bundleList(): Promise<IBundle[]>;
bundleInstall(bundleUrl: any): Promise<IExecFile>;
bundleUninstall(name: any): Promise<IExecFile>;
private execFile;
}
export declare function clearAllClientToolsCache(): void;
export declare function locateAllClientTools(): Promise<ClientTools[]>;
export declare function locateClientTools(overridePath?: string, build?: string, cwd?: string, includeFolders?: string[], legacyMode?: boolean, args?: string[]): Promise<ClientTools>;
export {};