///
import { IAsyncArgdownPlugin, IAsyncRequestHandler } from "../IAsyncArgdownPlugin";
import { IArgdownRequest, IRequestHandler } from "@argdown/core";
import { IFileNameProvider } from "./SaveAsFilePlugin";
export interface IPdfSettings {
outputDir?: string;
}
export interface ISvgToPdfSettings {
outputDir?: string;
format?: string;
fileName?: string | IFileNameProvider;
pdf?: {
compress?: boolean;
};
svg?: {
useCSS?: boolean;
assumePt?: boolean;
preserveAspectRatio?: string;
};
width?: number;
height?: number;
padding?: number;
fonts?: {
name: string;
path: string;
}[];
}
declare module "@argdown/core" {
interface IArgdownRequest {
pdf?: IPdfSettings;
svgToPdf?: ISvgToPdfSettings;
}
}
export declare class SvgToPdfExportPlugin implements IAsyncArgdownPlugin {
name: string;
defaults: ISvgToPdfSettings;
constructor(config?: ISvgToPdfSettings);
getSettings(request: IArgdownRequest): ISvgToPdfSettings;
prepare: IRequestHandler;
runAsync: IAsyncRequestHandler;
savePdfToFile(pdf: any, fileName: string): Promise;
getFileName(file: string): string;
toArrayBuffer(buf: Buffer): ArrayBuffer;
}