feat(lexer): lexer `err` object now contains `valid` property