diff --git a/packages/markdown-cicero/index.d.ts b/packages/markdown-cicero/index.d.ts new file mode 100644 index 00000000..870ee43b --- /dev/null +++ b/packages/markdown-cicero/index.d.ts @@ -0,0 +1,32 @@ +export interface CiceroMarkOptions { + removeFormatting?: boolean; + unquoteVariables?: boolean; + [name: string]: unknown; +} + +export declare class CiceroMarkTransformer { + constructor(); + getClauseText(input: unknown): string; + getSerializer(): unknown; + fromCiceroEdit(input: string): unknown; + toCiceroMarkUnwrapped(input: unknown, options?: CiceroMarkOptions): unknown; + fromCommonMark(input: unknown): unknown; + fromMarkdown(markdown: string): unknown; + toMarkdown(input: unknown, options?: CiceroMarkOptions): string; + fromMarkdownCicero(markdown: string, options?: CiceroMarkOptions): unknown; + toMarkdownCicero(input: unknown): string; + toCommonMark(input: unknown, options?: CiceroMarkOptions): unknown; + unquote(input: unknown): unknown; + toTokens(input: string): unknown; + fromTokens(tokenStream: unknown): unknown; +} + +export declare class FromCiceroEditVisitor { + constructor(...args: unknown[]); +} + +export declare class ToCommonMarkVisitor { + constructor(...args: unknown[]); +} + +export declare const Decorators: Record; diff --git a/packages/markdown-cicero/package.json b/packages/markdown-cicero/package.json index 6066e07a..6ba985dd 100644 --- a/packages/markdown-cicero/package.json +++ b/packages/markdown-cicero/package.json @@ -10,9 +10,11 @@ "access": "public" }, "files": [ - "lib" + "lib", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "scripts": { "pretest": "npm run lint", "lint": "eslint .", diff --git a/packages/markdown-cli/index.d.ts b/packages/markdown-cli/index.d.ts new file mode 100644 index 00000000..cb0ff5c3 --- /dev/null +++ b/packages/markdown-cli/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/packages/markdown-cli/package.json b/packages/markdown-cli/package.json index 087e894f..d76d428d 100644 --- a/packages/markdown-cli/package.json +++ b/packages/markdown-cli/package.json @@ -15,9 +15,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "scripts": { "pretest": "npm run lint", "lint": "eslint .", diff --git a/packages/markdown-common/index.d.ts b/packages/markdown-common/index.d.ts new file mode 100644 index 00000000..75774311 --- /dev/null +++ b/packages/markdown-common/index.d.ts @@ -0,0 +1,40 @@ +export interface ModelDefinition { + MODEL: string; + NAMESPACE: string; + [name: string]: unknown; +} + +export declare class Stack { + constructor(...args: unknown[]); +} + +export declare const CommonMarkModel: ModelDefinition; +export declare const CiceroMarkModel: ModelDefinition; +export declare const ConcertoMetaModel: ModelDefinition; +export declare const TemplateMarkModel: ModelDefinition; + +export declare const CommonMarkUtils: Record; +export declare const fromcommonmarkrules: Record; + +export declare class FromCommonMarkVisitor { + constructor(...args: unknown[]); +} + +export declare class ToMarkdownVisitor { + constructor(...args: unknown[]); +} + +export declare class FromMarkdownIt { + constructor(...args: unknown[]); + toCommonMark(tokenStream: unknown): unknown; +} + +export declare class CommonMarkTransformer { + constructor(); + toMarkdown(input: unknown): string; + removeFormatting(input: unknown): unknown; + toTokens(markdown: string): unknown; + fromTokens(tokenStream: unknown): unknown; + fromMarkdown(markdown: string): unknown; + getSerializer(): unknown; +} diff --git a/packages/markdown-common/package.json b/packages/markdown-common/package.json index 28c5c5ad..91b32eb2 100644 --- a/packages/markdown-common/package.json +++ b/packages/markdown-common/package.json @@ -10,9 +10,11 @@ "access": "public" }, "files": [ - "lib" + "lib", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "scripts": { "pretest": "npm run lint", "lint": "eslint .", diff --git a/packages/markdown-html/index.d.ts b/packages/markdown-html/index.d.ts new file mode 100644 index 00000000..d8b602e4 --- /dev/null +++ b/packages/markdown-html/index.d.ts @@ -0,0 +1,13 @@ +export interface HtmlTransformerOptions { + [name: string]: unknown; +} + +export declare class HtmlTransformer { + constructor(options?: HtmlTransformerOptions); + toHtml(input: unknown): string; + toCiceroMark(input: string): unknown; +} + +export declare class ToHtmlStringVisitor { + constructor(options?: HtmlTransformerOptions); +} diff --git a/packages/markdown-html/package.json b/packages/markdown-html/package.json index 9dbae428..a4735868 100644 --- a/packages/markdown-html/package.json +++ b/packages/markdown-html/package.json @@ -12,9 +12,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "browser": "umd/markdown-html.js", "scripts": { "webpack": "webpack --config webpack.config.js --mode production", diff --git a/packages/markdown-it-cicero/index.d.ts b/packages/markdown-it-cicero/index.d.ts new file mode 100644 index 00000000..b4358801 --- /dev/null +++ b/packages/markdown-it-cicero/index.d.ts @@ -0,0 +1,24 @@ +export interface MarkdownItLike { + inline: { + ruler: { + before(name: string, ruleName: string, rule: (...args: unknown[]) => unknown): void; + }; + }; + block: { + ruler: { + before( + name: string, + ruleName: string, + rule: (...args: unknown[]) => unknown, + options?: Record + ): void; + }; + }; + renderer: { + rules: Record unknown>; + }; +} + +declare function ciceroPlugin(md: MarkdownItLike): void; + +export = ciceroPlugin; diff --git a/packages/markdown-it-cicero/package.json b/packages/markdown-it-cicero/package.json index 39d5a2bd..3b81f00e 100644 --- a/packages/markdown-it-cicero/package.json +++ b/packages/markdown-it-cicero/package.json @@ -12,9 +12,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "scripts": { "pretest": "npm run lint", "lint": "eslint .", diff --git a/packages/markdown-it-template/index.d.ts b/packages/markdown-it-template/index.d.ts new file mode 100644 index 00000000..852335ca --- /dev/null +++ b/packages/markdown-it-template/index.d.ts @@ -0,0 +1,24 @@ +export interface MarkdownItLike { + inline: { + ruler: { + before(name: string, ruleName: string, rule: (...args: unknown[]) => unknown): void; + }; + }; + block: { + ruler: { + before( + name: string, + ruleName: string, + rule: (...args: unknown[]) => unknown, + options?: Record + ): void; + }; + }; + renderer: { + rules: Record unknown>; + }; +} + +declare function templatePlugin(md: MarkdownItLike): void; + +export = templatePlugin; diff --git a/packages/markdown-it-template/package.json b/packages/markdown-it-template/package.json index 1f2887c0..01b9e561 100644 --- a/packages/markdown-it-template/package.json +++ b/packages/markdown-it-template/package.json @@ -12,9 +12,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "scripts": { "pretest": "npm run lint", "lint": "eslint .", diff --git a/packages/markdown-template/index.d.ts b/packages/markdown-template/index.d.ts new file mode 100644 index 00000000..829cf6fd --- /dev/null +++ b/packages/markdown-template/index.d.ts @@ -0,0 +1,39 @@ +export interface TemplateInput { + fileName?: string; + content: string; +} + +export interface TemplateOptions { + verbose?: boolean; + [name: string]: unknown; +} + +export declare const util: Record; +export declare const templatemarkutil: Record; +export declare const datetimeutil: Record; + +export declare function normalizeNLs(input: string): string; + +export declare class TemplateException extends Error { + constructor(message?: string); +} + +export declare class TemplateMarkTransformer { + toTokens(templateInput: TemplateInput): unknown; + tokensToMarkdownTemplate( + tokenStream: unknown, + modelManager: unknown, + templateKind: string, + options?: TemplateOptions, + conceptFullyQualifiedName?: string + ): unknown; + fromMarkdownTemplate( + templateInput: TemplateInput, + modelManager: unknown, + templateKind: string, + options?: TemplateOptions, + conceptFullyQualifiedName?: string + ): unknown; + toMarkdownTemplate(input: unknown): string; + getSerializer(): unknown; +} diff --git a/packages/markdown-template/package.json b/packages/markdown-template/package.json index 94348220..8e73e35f 100644 --- a/packages/markdown-template/package.json +++ b/packages/markdown-template/package.json @@ -12,9 +12,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "browser": "umd/markdown-template.js", "scripts": { "webpack": "webpack --config webpack.config.js --mode production", diff --git a/packages/markdown-transform/index.d.ts b/packages/markdown-transform/index.d.ts new file mode 100644 index 00000000..85bce7e5 --- /dev/null +++ b/packages/markdown-transform/index.d.ts @@ -0,0 +1,74 @@ +export type FileFormat = 'utf8' | 'json' | 'binary' | string; + +export interface FormatDescriptor { + docs: string; + fileFormat: FileFormat; + [name: string]: unknown; +} + +export interface TransformParameters { + inputFileName?: string; + model?: string[]; + template?: unknown; + templateFileName?: string; + [name: string]: unknown; +} + +export interface TransformOptions { + verbose?: boolean; + source?: unknown; + [name: string]: unknown; +} + +export type TransformFunction = ( + input: unknown, + parameters?: TransformParameters, + options?: TransformOptions +) => unknown | Promise; + +export interface TransformExtension { + format?: { + name: string; + docs: string; + fileFormat: FileFormat; + }; + transforms?: Record>; +} + +export declare function formatDescriptor(format: string): FormatDescriptor; +export declare function transform( + source: unknown, + sourceFormat: string, + destinationFormat: string[], + parameters?: TransformParameters, + options?: TransformOptions +): Promise; +export declare function generateTransformationDiagram(): string; + +export declare const builtinTransformationGraph: Record; + +export declare class TransformEngine { + constructor(transformationGraph: Record); + generateTransformationDiagram(): string; + transformToDestination( + source: unknown, + sourceFormat: string, + destinationFormat: string, + parameters?: TransformParameters, + options?: TransformOptions + ): Promise; + transform( + source: unknown, + sourceFormat: string, + destinationFormat: string[], + parameters?: TransformParameters, + options?: TransformOptions + ): Promise; + formatDescriptor(format: string): FormatDescriptor; + getTransformationGraph(): Record; + getAllFormats(): string[]; + getAllTargetFormats(sourceFormat: string): string[]; + registerFormat(sourceFormat: string, docs: string, fileFormat: FileFormat): void; + registerTransformation(sourceFormat: string, targetFormat: string, transform: TransformFunction): void; + registerExtension(extension: TransformExtension): void; +} diff --git a/packages/markdown-transform/index.js b/packages/markdown-transform/index.js index 3f341bdd..f38381ef 100755 --- a/packages/markdown-transform/index.js +++ b/packages/markdown-transform/index.js @@ -21,5 +21,6 @@ module.exports.formatDescriptor = require('./lib/transform').formatDescriptor; module.exports.transform = require('./lib/transform').transform; +module.exports.generateTransformationDiagram = require('./lib/transform').generateTransformationDiagram; module.exports.TransformEngine = require('./lib/transformEngine'); module.exports.builtinTransformationGraph = require('./lib/builtinTransforms'); diff --git a/packages/markdown-transform/package.json b/packages/markdown-transform/package.json index 12e3edea..4de506eb 100644 --- a/packages/markdown-transform/package.json +++ b/packages/markdown-transform/package.json @@ -12,9 +12,11 @@ "files": [ "bin", "lib", - "umd" + "umd", + "index.d.ts" ], "main": "index.js", + "typings": "index.d.ts", "browser": "umd/markdown-transform.js", "scripts": { "webpack": "webpack --config webpack.config.js --mode production",