chromiumly
Version:
A lightweight Typescript library that interacts with Gotenberg's different modules to convert a variety of document formats to PDF files.
66 lines (65 loc) • 1.9 kB
TypeScript
import { Metadata, PathLikeOrReadStream, PdfFormat } from '../../common';
import { Split } from '../../common/types';
import { ChromiumOptions, Cookie } from './common.types';
type PageSize = {
width: number;
height: number;
};
type PageMargins = {
top: number;
bottom: number;
left: number;
right: number;
};
export type PageProperties = {
singlePage?: boolean;
size?: PageSize;
margins?: PageMargins;
preferCssPageSize?: boolean;
printBackground?: boolean;
omitBackground?: boolean;
landscape?: boolean;
scale?: number;
nativePageRanges?: {
from: number;
to: number;
};
};
export type ConversionOptions = ChromiumOptions & {
properties?: PageProperties;
/**
* @deprecated Starting from Gotenberg version 8.0.0, Chromium no longer provides support for pdfFormat.
* @see {@link https://github.com/gotenberg/gotenberg/releases/tag/v8.0.0}
*/
pdfFormat?: PdfFormat;
pdfUA?: boolean;
/**
* @deprecated Starting from Gotenberg version 8.0.0, Chromium no longer provides support for userAgent.
* @see {@link https://github.com/gotenberg/gotenberg/releases/tag/v8.0.0}
*/
userAgent?: string;
metadata?: Metadata;
cookies?: Cookie[];
split?: Split;
};
export type HtmlConversionOptions = ConversionOptions & {
html: PathLikeOrReadStream;
assets?: {
file: PathLikeOrReadStream;
name: string;
}[];
header?: PathLikeOrReadStream;
footer?: PathLikeOrReadStream;
};
export type UrlConversionOptions = ConversionOptions & {
url: string;
header?: PathLikeOrReadStream;
footer?: PathLikeOrReadStream;
};
export type MarkdownConversionOptions = ConversionOptions & {
html: PathLikeOrReadStream;
header?: PathLikeOrReadStream;
footer?: PathLikeOrReadStream;
markdown: PathLikeOrReadStream;
};
export {};