npm.io
2.2.7 • Published 8 months ago

@types/jsx-pdf

Licence
MIT
Version
2.2.7
Deps
1
Size
6 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/jsx-pdf

Summary

This package contains type definitions for jsx-pdf (https://github.com/schibsted/jsx-pdf#readme).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jsx-pdf.

index.d.ts

import * as PDFMake from "pdfmake/interfaces";

export function renderPdf(jsx: JSX.Element): PDFMake.TDocumentDefinitions;

export const Fragment: JSX.IntrinsicElements["stack"];

declare global {
    namespace JSX {
        // eslint-disable-next-line @typescript-eslint/no-empty-interface
        interface Element {}

        type Child = Element | Element[];

        type DynamicChild =
            | Child
            | ((currentPage: number, pageCount: number, pageSize: PDFMake.ContextPageSize) => Child);

        interface ElementChildrenAttribute {
            children: DynamicChild;
        }

        type Ele<Props = {}> = ElementChildrenAttribute & Props;

        type EleNoChidlren<Props = {}> = Props;

        interface IntrinsicElements {
            document: Ele<Omit<PDFMake.TDocumentDefinitions, "content" | "header" | "footer">>;
            header: Ele;
            footer: Ele;
            content: Ele;
            stack: Ele<Omit<PDFMake.ContentStack, "stack">>;
            text: Ele<Omit<PDFMake.ContentText, "text">>;
            ol: Ele<Omit<PDFMake.ContentOrderedList, "ol">>;
            ul: Ele<Omit<PDFMake.ContentUnorderedList, "ul">>;
            table: Ele<Omit<PDFMake.ContentTable, "table"> & Omit<PDFMake.Table, "body">>;
            row: Ele<Element>;
            cell: Ele<Element>;
            columns: Ele<Omit<PDFMake.ContentColumns, "columns">>;
            column: Ele<{ width: number | string }>;

            image: EleNoChidlren<Omit<PDFMake.ContentImage, "image"> & { src: string }>;
            qr: EleNoChidlren<Omit<PDFMake.ContentQr, "qr"> & { content: string }>;
            svg: EleNoChidlren<{
                content: string;
                width?: number | undefined;
                height?: number | undefined;
                fit?: [number, number] | undefined;
            }>;
        }
    }
}

Additional Details

  • Last updated: Wed, 28 Jan 2026 1934 GMT
  • Dependencies: @types/pdfmake

Credits

These definitions were written by Kyle Hensel.