import React from "react"; export const DOCXMargin = " "; export interface DOCXFigImageFile { rId: string, name: string, id: number, cx: number, cy: number, blob: { buf: ArrayBuffer; type: string; }, } export interface DOCXFigEmbedFile { rId: string, name: string, id: number, blob: { buf: ArrayBuffer; type: string; }, } export interface DOCXFigDataBase { src: string, } export interface DOCXFigDataImage extends DOCXFigDataBase { type: "image", image: DOCXFigImageFile, } export interface DOCXFigDataEmbeddedPDF extends DOCXFigDataBase { type: "embeddedPDF", file: DOCXFigEmbedFile, } export interface DOCXFigDataRenderedPDF extends DOCXFigDataBase { type: "renderedPDF", pages: DOCXFigImageFile[], } export interface DOCXFigDataEmbeddedAndRenderedPDF extends DOCXFigDataBase { type: "embeddedAndRenderedPDF", file: DOCXFigEmbedFile, pages: DOCXFigImageFile[], } export type DOCXFigData = DOCXFigDataImage | DOCXFigDataEmbeddedPDF | DOCXFigDataRenderedPDF |DOCXFigDataEmbeddedAndRenderedPDF; export interface DOCXFigDataManager { getFigData(src: string): DOCXFigData | null; getFigDataItems(): [src: string, figData: DOCXFigData][]; pdfIcon: { rId: string; buf: ArrayBuffer; fileName: string, }; } export interface DOCXOptions { figDataManager?: DOCXFigDataManager; } export interface DOCXComponentProps { docxOptions: DOCXOptions; } export function wrapDOCXComponent
(docxComponentID: TComponentID, Component: React.ComponentType
) {
void docxComponentID;
const ret = ((props: P & DOCXComponentProps) => {
return
& {componentID: TComponentID};
ret.componentID = docxComponentID;
return ret;
}
export type ComponentWithTag (props: React.PropsWithChildren ): React.DOMElement ;
displayName: `ComponentWithTag<${TTag}>`;
}
export function makeComponentWithTag (props: React.PropsWithChildren ) {
return React.createElement(tag, props);
};
func.displayName = `ComponentWithTag<${tag}>` as const;
return func;
}
const RelationshipsTag = makeComponentWithTag("Relationships");
const Relationship = makeComponentWithTag("Relationship");
export const Relationships: React.FC<{relationships: {Id: string, Type: string, Target: string}[]}> = props => (