Statement.ImportDeclarationand specifier('M, 'T) = | ImportNamedSpecifiers(list(named_specifier('M, 'T)))| ImportNamespaceSpecifier(('M, Identifier.t('M, 'T)));and named_specifier('M, 'T) = {kind: option(import_kind),local: option(Identifier.t('M, 'T)),remote: Identifier.t('M, 'T),remote_name_def_loc: option('M),};and default_identifier('M, 'T) = {identifier: Identifier.t('M, 'T),remote_default_name_def_loc: option('M),};and t('M, 'T) = {import_kind: import_kind,source: ('T, StringLiteral.t('M)),default: option(default_identifier('M, 'T)),specifiers: option(specifier('M, 'T)),comments: option(Syntax.t('M, unit)),};