Skip to content
File

Blob: types/defines/to-markdown.d.ts

typescript68 lines
1export type MarkdownDocument = {
2 name: string;
3 blob: Blob;
4}
5 
6export type ConversionResponse = {
7 id: string;
8 name: string;
9 mimeType: string;
10 format: 'markdown';
11 tokens: number;
12 data: string;
13} | {
14 id: string;
15 name: string;
16 mimeType: string;
17 format: 'error';
18 error: string;
19};
20 
21export type ImageConversionOptions = {
22 descriptionLanguage?: 'en' | 'es' | 'fr' | 'it' | 'pt' | 'de';
23}
24 
25export type EmbeddedImageConversionOptions = ImageConversionOptions & {
26 convert?: boolean;
27 maxConvertedImages?: number;
28};
29 
30export type ConversionOptions = {
31 html?: {
32 images?: EmbeddedImageConversionOptions & { convertOGImage?: boolean };
33 hostname?: string;
34 cssSelector?: string;
35 },
36 docx?: {
37 images?: EmbeddedImageConversionOptions;
38 },
39 image?: ImageConversionOptions;
40 pdf?: {
41 images?: EmbeddedImageConversionOptions;
42 metadata?: boolean;
43 },
44};
45 
46export type ConversionRequestOptions = {
47 gateway?: GatewayOptions;
48 extraHeaders?: object;
49 conversionOptions?: ConversionOptions;
50};
51 
52export type SupportedFileFormat = {
53 mimeType: string;
54 extension: string;
55};
56 
57export declare abstract class ToMarkdownService {
58 transform(
59 files: MarkdownDocument[],
60 options?: ConversionRequestOptions
61 ): Promise<ConversionResponse[]>;
62 transform(
63 files: MarkdownDocument,
64 options?: ConversionRequestOptions
65 ): Promise<ConversionResponse>;
66 supported(): Promise<SupportedFileFormat[]>
67}