/**
 * Copyright (c) 2016, Daniel Imms (MIT License).
 * Copyright (c) 2018, Microsoft Corporation (MIT License).
 */ export interface IProcessEnv { [ key ] : string | undefined ; } export interface ITerminal { /**
     * Gets the name of the process.
     */ process : string ; /**
     * Gets the process ID.
     */ pid : number ; param data write ( data ) : void ; param cols param rows resize ( cols , rows ) : void ; /**
     * Close, kill and destroy the socket.
     */ destroy ( ) : void ; param signal kill ( signal ? ) : void ; /**
     * Set the pty socket encoding.
     */ setEncoding ( encoding ) : void ; /**
     * Resume the pty socket.
     */ resume ( ) : void ; /**
     * Pause the pty socket.
     */ pause ( ) : void ; /**
     * Alias for ITerminal.on(eventName, listener).
     */ addListener ( eventName , listener ) : void ; param eventName param listener on ( eventName , listener ) : void ; /**
     * Returns a copy of the array of listeners for the event named eventName.
     */ listeners ( eventName ) : Function [ ] ; /**
     * Removes the specified listener from the listener array for the event named
     * eventName.
     */ removeListener ( eventName , listener ) : void ; /**
     * Removes all listeners, or those of the specified eventName.
     */ removeAllListeners ( eventName ) : void ; /**
     * Adds a one time listener function for the event named eventName. The next
     * time eventName is triggered, this listener is removed and then invoked.
     */ once ( eventName , listener ) : void ; } interface IBasePtyForkOptions { name ? : string ; cols ? : number ; rows ? : number ; cwd ? : string ; env ? : IProcessEnv ; encoding ? : string ; handleFlowControl ? : boolean ; flowControlPause ? : string ; flowControlResume ? : string ; } export interface IPtyForkOptions extends IBasePtyForkOptions { uid ? : number ; gid ? : number ; closeFDs ? : boolean ; } export interface IWindowsPtyForkOptions extends IBasePtyForkOptions { useConpty ? : boolean ; conptyInheritCursor ? : boolean ; } export interface IPtyOpenOptions { cols ? : number ; rows ? : number ; encoding ? : string ; }