myst-to-jats
Version:
Export from MyST Markdown to JATS
52 lines • 2.38 kB
TypeScript
import type { Root } from 'myst-spec';
import type { Plugin } from 'unified';
import { VFile } from 'vfile';
import type { CitationRenderer } from 'citation-js-utils';
import type { MessageInfo, GenericNode } from 'myst-common';
import { SourceFileKind } from 'myst-spec-ext';
import type { Handler, IJatsSerializer, Options, StateData, Element, Attributes, ArticleContent, DocumentOptions, FrontmatterWithParts } from './types.js';
export declare class JatsSerializer implements IJatsSerializer {
file: VFile;
data: StateData;
handlers: Record<string, Handler>;
mdast: Root;
stack: Element[];
footnotes: Element[];
expressions: Element[];
referenceOrder: string[];
opts: Options;
constructor(file: VFile, mdast: Root, opts?: Options);
render(ignoreParts?: boolean): this;
top(): Element;
warn(message: string, node?: GenericNode, source?: string, opts?: MessageInfo): void;
error(message: string, node?: GenericNode, source?: string, opts?: MessageInfo): void;
pushNode(el?: Element): Element | undefined;
text(text?: string): Element | undefined;
renderChildren(node: GenericNode | GenericNode[]): void;
renderInline(node: GenericNode, name: string, attributes?: Attributes): void;
addLeaf(name: string, attributes?: Attributes): void;
openNode(name: string, attributes?: Attributes, isLeaf?: boolean): void;
closeNode(): Element | undefined;
elements(): Element[];
}
export declare class JatsDocument {
file: VFile;
options: DocumentOptions;
content: ArticleContent;
constructor(file: VFile, content: ArticleContent, opts?: DocumentOptions);
article(articleType?: string, specificUse?: string): Element;
frontStub(frontmatter?: FrontmatterWithParts, state?: IJatsSerializer, notebookRep?: boolean): Element[];
subArticleState(content: ArticleContent, notebookRep: boolean): IJatsSerializer;
subArticle(subArticleState: IJatsSerializer, content: ArticleContent, notebookRep: boolean): Element;
body(state?: JatsSerializer): Element;
}
export declare function writeJats(file: VFile, content: ArticleContent, opts?: DocumentOptions): VFile;
declare const plugin: Plugin<[
SourceFileKind,
FrontmatterWithParts?,
CitationRenderer?,
string?,
DocumentOptions?
], Root, VFile>;
export default plugin;
//# sourceMappingURL=index.d.ts.map