docx
Version:
Easily generate .docx files with JS/TS with a nice declarative API. Works for Node and on the Browser.
22 lines (21 loc) • 841 B
TypeScript
import { BaseXmlComponent, IContext } from './base';
import { IXmlableObject } from './xmlable-object';
export type AttributeMap<T> = Record<keyof T, string>;
export type AttributeData = Record<string, boolean | number | string>;
export type AttributePayload<T> = {
readonly [P in keyof T]: {
readonly key: string;
readonly value: T[P];
};
};
export declare abstract class XmlAttributeComponent<T extends Record<string, any>> extends BaseXmlComponent {
private readonly root;
protected readonly xmlKeys?: AttributeMap<T>;
constructor(root: T);
prepForXml(_: IContext): IXmlableObject;
}
export declare class NextAttributeComponent<T extends AttributeData> extends BaseXmlComponent {
private readonly root;
constructor(root: AttributePayload<T>);
prepForXml(_: IContext): IXmlableObject;
}