Statement.DeclareExportDeclarationtype declaration('M, 'T) = | Variable(('M, DeclareVariable.t('M, 'T)))| Function(('M, DeclareFunction.t('M, 'T)))| Class(('M, DeclareClass.t('M, 'T)))| Component(('M, DeclareComponent.t('M, 'T)))| DefaultType(Type.t('M, 'T))| NamedType(('M, TypeAlias.t('M, 'T)))| NamedOpaqueType(('M, OpaqueType.t('M, 'T)))| Interface(('M, Interface.t('M, 'T)))| Enum(('M, EnumDeclaration.t('M, 'T)));and t('M, 'T) = {default: option('M),declaration: option(declaration('M, 'T)),specifiers: option(ExportNamedDeclaration.specifier('M, 'T)),source: option(('T, StringLiteral.t('M))),comments: option(Syntax.t('M, unit)),};