forked from MapComplete/MapComplete
		
	
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			485 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			485 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import ScriptUtils from "./ScriptUtils"
 | 
						|
 | 
						|
export default abstract class Script {
 | 
						|
    private readonly _docs: string
 | 
						|
 | 
						|
    constructor(docs: string) {
 | 
						|
        this._docs = docs
 | 
						|
    }
 | 
						|
 | 
						|
    abstract main(args: string[]): Promise<void>
 | 
						|
 | 
						|
    public run(): void {
 | 
						|
        ScriptUtils.fixUtils()
 | 
						|
        const args = [...process.argv]
 | 
						|
        args.splice(0, 2)
 | 
						|
        this.main(args).then((_) => console.log("All done"))
 | 
						|
    }
 | 
						|
 | 
						|
    public printHelp() {
 | 
						|
        console.log(this._docs)
 | 
						|
    }
 | 
						|
}
 |