Js_parser.Parser_flowmodule Sedlexing = Flow_sedlexing;module Ast = Flow_ast;let filter_duplicate_errors: 
  list((Loc.t, Parse_error.t)) =>
  list((Loc.t, Parse_error.t));let check_for_duplicate_exports: 
  Parser_env.env =>
  list((Loc.t, Ast.Statement.t'(Loc.t, Loc.t))) =>
  unit;module Parse: Parser_common.PARSER;let do_parse: 
  Parser_env.env =>
  (Parser_env.env => 'a) =>
  bool =>
  ('b, list((Loc.t, Parse_error.t)));let parse_statement: 
  Parser_env.env =>
  bool =>
  (Flow_ast.Statement.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let parse_expression: 
  Parser_env.env =>
  bool =>
  (Flow_ast.Expression.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let parse_program: 
  bool =>
  ?token_sink:option((Parser_env.token_sink_result => unit)) =>
  ?parse_options:option(Parser_env.parse_options) =>
  option(File_key.t) =>
  string =>
  (Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let program: 
  ?fail:bool =>
  ?token_sink:option((Parser_env.token_sink_result => unit)) =>
  ?parse_options:option(Parser_env.parse_options) =>
  string =>
  (Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let program_file: 
  ?fail:bool =>
  ?token_sink:option((Parser_env.token_sink_result => unit)) =>
  ?parse_options:option(Parser_env.parse_options) =>
  string =>
  option(File_key.t) =>
  (Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let parse_annot: 
  ?parse_options:option(Parser_env.parse_options) =>
  option(File_key.t) =>
  string =>
  (Flow_ast.Type.annotation(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let package_json_file: 
  ?fail:bool =>
  ?token_sink:option((Parser_env.token_sink_result => unit)) =>
  ?parse_options:option(Parser_env.parse_options) =>
  string =>
  option(File_key.t) =>
  ((Loc.t, Flow_ast.Expression.Object.t(Loc.t, Loc.t)), list((Loc.t, 
                                                              Parse_error.t)));let json_file: 
  ?fail:bool =>
  ?token_sink:option((Parser_env.token_sink_result => unit)) =>
  ?parse_options:option(Parser_env.parse_options) =>
  string =>
  option(File_key.t) =>
  (Flow_ast.Expression.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));let jsx_pragma_expression: 
  string =>
  option(File_key.t) =>
  (Flow_ast.Expression.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));