Module Statement.DeclareExportDeclaration

type declaration('M, 'T) =
  1. | Variable(('M, DeclareVariable.t('M, 'T)))
  2. | Function(('M, DeclareFunction.t('M, 'T)))
  3. | Class(('M, DeclareClass.t('M, 'T)))
  4. | Component(('M, DeclareComponent.t('M, 'T)))
  5. | DefaultType(Type.t('M, 'T))
  6. | NamedType(('M, TypeAlias.t('M, 'T)))
  7. | NamedOpaqueType(('M, OpaqueType.t('M, 'T)))
  8. | Interface(('M, Interface.t('M, 'T)))
  9. | Enum(('M, EnumDeclaration.t('M, 'T)))
;
and t('M, 'T) = {
  1. default: option('M),
  2. declaration: option(declaration('M, 'T)),
  3. specifiers: option(ExportNamedDeclaration.specifier('M, 'T)),
  4. source: option(('T, StringLiteral.t('M))),
  5. comments: option(Syntax.t('M, unit)),
};
let pp_declaration: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => declaration('M, 'T) => unit;
let show_declaration: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => declaration('M, 'T) => string;
let pp: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => t('M, 'T) => unit;
let show: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => t('M, 'T) => string;