Module Statement.ImportDeclaration

type import_kind =
  1. | ImportType
  2. | ImportTypeof
  3. | ImportValue
and ('M, 'T) specifier =
  1. | ImportNamedSpecifiers of ('M, 'T) named_specifier list
  2. | ImportNamespaceSpecifier of 'M * ('M, 'T) Identifier.t
and ('M, 'T) named_specifier = {
  1. kind : import_kind option;
  2. local : ('M, 'T) Identifier.t option;
  3. remote : ('M, 'T) Identifier.t;
  4. remote_name_def_loc : 'M option;
}
and ('M, 'T) default_identifier = {
  1. identifier : ('M, 'T) Identifier.t;
  2. remote_default_name_def_loc : 'M option;
}
and ('M, 'T) t = {
  1. import_kind : import_kind;
  2. source : 'T * 'M StringLiteral.t;
  3. default : ('M, 'T) default_identifier option;
  4. specifiers : ('M, 'T) specifier option;
  5. comments : ('M, unit) Syntax.t option;
}