| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | /*** * Node External Editor * * Kevin Gravier <kevin@mrkmg.com> * MIT 2019 */import { CreateFileError } from "./errors/CreateFileError";import { LaunchEditorError } from "./errors/LaunchEditorError";import { ReadFileError } from "./errors/ReadFileError";import { RemoveFileError } from "./errors/RemoveFileError";export interface IEditorParams {    args: string[];    bin: string;}export interface IFileOptions {    prefix?: string;    postfix?: string;    mode?: number;    template?: string;    dir?: string;}export declare type StringCallback = (err: Error, result: string) => void;export declare type VoidCallback = () => void;export { CreateFileError, LaunchEditorError, ReadFileError, RemoveFileError };export declare function edit(text?: string, fileOptions?: IFileOptions): string;export declare function editAsync(text: string, callback: StringCallback, fileOptions?: IFileOptions): void;export declare class ExternalEditor {    private static splitStringBySpace;    text: string;    tempFile: string;    editor: IEditorParams;    lastExitStatus: number;    private fileOptions;    readonly temp_file: string;    readonly last_exit_status: number;    constructor(text?: string, fileOptions?: IFileOptions);    run(): string;    runAsync(callback: StringCallback): void;    cleanup(): void;    private determineEditor;    private createTemporaryFile;    private readTemporaryFile;    private removeTemporaryFile;    private launchEditor;    private launchEditorAsync;}
 |