diff --git a/less/less-tests.ts b/less/less-tests.ts index 71dfbae762..589250d0bb 100644 --- a/less/less-tests.ts +++ b/less/less-tests.ts @@ -8,6 +8,6 @@ less.render(".class { width: (1 + 1) }").then((output) => { less.render("fail").then((output) => { throw new Error("promise should have been rejected"); -}, () => { - console.log("rejected as expected"); +}, (error: Less.RenderError) => { + console.log("rejected as expected on line number " + error.line); }); diff --git a/less/less.d.ts b/less/less.d.ts index 2c10ce50e1..f329dd48ef 100644 --- a/less/less.d.ts +++ b/less/less.d.ts @@ -51,6 +51,16 @@ declare module Less { rootFileInfo?: RootFileInfo; } + interface RenderError { + column: number; + extract: string[]; + filename: string; + index: number; + line: number; + message: string; + type: string; + } + interface RenderOutput { css: string; map: string; @@ -59,8 +69,8 @@ declare module Less { } interface LessStatic { - render(input: string, callback: (output: Less.RenderOutput) => void): void; - render(input: string, options: Less.Options, callback: (output: Less.RenderOutput) => void): void; + render(input: string, callback: (error: Less.RenderError, output: Less.RenderOutput) => void): void; + render(input: string, options: Less.Options, callback: (error: Less.RenderError, output: Less.RenderOutput) => void): void; render(input: string): Less.Promise; render(input: string, options: Less.Options): Less.Promise;