///
import { EventEmitter } from 'events';
import {
BuilderInterface, BuilderCacheInterface, Command, Message, OptionsSource, Uri
} from '@dicy/types';
export * from '@dicy/types';
export class DiCy extends EventEmitter implements BuilderCacheInterface {
get (file: Uri): Promise
clear (file: Uri): Promise
clearAll (): Promise
destroy (): Promise
getTargets (file: Uri): Promise
kill (file: Uri, message?: string): Promise
killAll (message?: string): Promise
run (file: Uri, commands: Command[]): Promise
setInstanceOptions (file: Uri, options: OptionsSource, merge?: boolean): Promise
setUserOptions (file: Uri, options: OptionsSource, merge?: boolean): Promise
setDirectoryOptions (file: Uri, options: OptionsSource, merge?: boolean): Promise
setProjectOptions (file: Uri, options: OptionsSource, merge?: boolean): Promise
on (event: 'log', listener: (file: Uri, messages: Message[]) => void): this
on (event: string | symbol, listener: (...args: any[]) => void): this
once (event: 'log', listener: (file: Uri, messages: Message[]) => void): this
once (event: string | symbol, listener: (...args: any[]) => void): this
prependListener (event: 'log', listener: (file: Uri, messages: Message[]) => void): this
prependListener (event: string | symbol, listener: (...args: any[]) => void): this
prependOnceListener (event: 'log', listener: (file: Uri, messages: Message[]) => void): this
prependOnceListener (event: string | symbol, listener: (...args: any[]) => void): this
removeListener (event: 'log', listener: (file: Uri, messages: Message[]) => void): this
removeListener (event: string | symbol, listener: (...args: any[]) => void): this
}