index.d.ts 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. interface Mammoth {
  2. convertToHtml: (input: Input, options?: Options) => Promise<Result>;
  3. extractRawText: (input: Input) => Promise<Result>;
  4. embedStyleMap: (input: Input, styleMap: string) => Promise<{
  5. toArrayBuffer: () => ArrayBuffer,
  6. toBuffer: () => Buffer,
  7. }>;
  8. images: Images;
  9. }
  10. type Input = NodeJsInput | BrowserInput;
  11. type NodeJsInput = PathInput | BufferInput;
  12. interface PathInput {
  13. path: string;
  14. }
  15. interface BufferInput {
  16. buffer: Buffer;
  17. }
  18. type BrowserInput = ArrayBufferInput;
  19. interface ArrayBufferInput {
  20. arrayBuffer: ArrayBuffer;
  21. }
  22. interface Options {
  23. styleMap?: string | Array<string>;
  24. includeEmbeddedStyleMap?: boolean;
  25. includeDefaultStyleMap?: boolean;
  26. convertImage?: ImageConverter;
  27. ignoreEmptyParagraphs?: boolean;
  28. idPrefix?: string;
  29. transformDocument?: (element: any) => any;
  30. }
  31. interface ImageConverter {
  32. __mammothBrand: "ImageConverter";
  33. }
  34. interface Image {
  35. contentType: string;
  36. readAsArrayBuffer: () => Promise<ArrayBuffer>;
  37. readAsBase64String: () => Promise<string>;
  38. readAsBuffer: () => Promise<Buffer>;
  39. read: ImageRead;
  40. }
  41. interface ImageRead {
  42. (): Promise<Buffer>;
  43. (encoding: string): Promise<string>;
  44. }
  45. interface ImageAttributes {
  46. src: string;
  47. }
  48. interface Images {
  49. dataUri: ImageConverter;
  50. imgElement: (f: (image: Image) => Promise<ImageAttributes>) => ImageConverter;
  51. }
  52. interface Result {
  53. value: string;
  54. messages: Array<Message>;
  55. }
  56. type Message = Warning | Error;
  57. interface Warning {
  58. type: "warning";
  59. message: string;
  60. }
  61. interface Error {
  62. type: "error";
  63. message: string;
  64. error: unknown;
  65. }
  66. declare const mammoth: Mammoth;
  67. export = mammoth;