| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- import { F as FormatOptions } from './shared/confbox.9745c98f.js';
- /**
- * Converts a [YAML](https://yaml.org/) string into an object.
- *
- * @NOTE This function does **not** understand multi-document sources, it throws exception on those.
- *
- * @NOTE Comments are not preserved after parsing.
- *
- * @NOTE This function does **not** support schema-specific tag resolution restrictions.
- * So, the JSON schema is not as strictly defined in the YAML specification.
- * It allows numbers in any notation, use `Null` and `NULL` as `null`, etc.
- * The core schema also has no such restrictions. It allows binary notation for integers.
- *
- * @template T The type of the return value.
- * @param text The YAML string to parse.
- * @param options Parsing options.
- * @returns The JavaScript value converted from the YAML string.
- */
- declare function parseYAML<T = unknown>(text: string, options?: YAMLParseOptions): T;
- /**
- * Converts a JavaScript value to a [YAML](https://yaml.org/) string.
- *
- * @NOTE Comments are not preserved in the output.
- *
- * @param value
- * @param options
- * @returns The YAML string converted from the JavaScript value.
- */
- declare function stringifyYAML(value: any, options?: YAMLStringifyOptions): string;
- interface YAMLParseOptions extends FormatOptions {
- /** string to be used as a file path in error/warning messages. */
- filename?: string | undefined;
- /** function to call on warning messages. */
- onWarning?(this: null, e: YAMLException): void;
- /** specifies a schema to use. */
- schema?: any | undefined;
- /** compatibility with JSON.parse behaviour. */
- json?: boolean | undefined;
- /** listener for parse events */
- listener?(this: any, eventType: any, state: any): void;
- }
- interface YAMLStringifyOptions extends FormatOptions {
- /** indentation width to use (in spaces). */
- indent?: number | undefined;
- /** when true, will not add an indentation level to array elements */
- noArrayIndent?: boolean | undefined;
- /** do not throw on invalid types (like function in the safe schema) and skip pairs and single values with such types. */
- skipInvalid?: boolean | undefined;
- /** specifies level of nesting, when to switch from block to flow style for collections. -1 means block style everwhere */
- flowLevel?: number | undefined;
- /** Each tag may have own set of styles. - "tag" => "style" map. */
- styles?: {
- [x: string]: any;
- } | undefined;
- /** specifies a schema to use. */
- schema?: any | undefined;
- /** if true, sort keys when dumping YAML. If a function, use the function to sort the keys. (default: false) */
- sortKeys?: boolean | ((a: any, b: any) => number) | undefined;
- /** set max line width. (default: 80) */
- lineWidth?: number | undefined;
- /** if true, don't convert duplicate objects into references (default: false) */
- noRefs?: boolean | undefined;
- /** if true don't try to be compatible with older yaml versions. Currently: don't quote "yes", "no" and so on, as required for YAML 1.1 (default: false) */
- noCompatMode?: boolean | undefined;
- /**
- * if true flow sequences will be condensed, omitting the space between `key: value` or `a, b`. Eg. `'[a,b]'` or `{a:{b:c}}`.
- * Can be useful when using yaml for pretty URL query params as spaces are %-encoded. (default: false).
- */
- condenseFlow?: boolean | undefined;
- /** strings will be quoted using this quoting style. If you specify single quotes, double quotes will still be used for non-printable characters. (default: `'`) */
- quotingType?: "'" | '"' | undefined;
- /** if true, all non-key strings will be quoted even if they normally don't need to. (default: false) */
- forceQuotes?: boolean | undefined;
- /** callback `function (key, value)` called recursively on each key/value in source object (see `replacer` docs for `JSON.stringify`). */
- replacer?: ((key: string, value: any) => any) | undefined;
- }
- interface Mark {
- buffer: string;
- column: number;
- line: number;
- name: string;
- position: number;
- snippet: string;
- }
- declare class YAMLException extends Error {
- constructor(reason?: string, mark?: Mark);
- toString(compact?: boolean): string;
- name: string;
- reason: string;
- message: string;
- mark: Mark;
- }
- export { type YAMLParseOptions, type YAMLStringifyOptions, parseYAML, stringifyYAML };
|