interface Parsed<T> {
    [NODE_TYPE]: symbol;
    anchor?: string;
    comment?: null | string;
    commentBefore?: null | string;
    flow?: boolean;
    items: T[];
    range: Range;
    schema: undefined | yaml.Schema;
    spaceBefore?: boolean;
    srcToken?: BlockSequence | FlowCollection;
    tag?: string;
    add(value: T): void;
    addIn(path: Iterable<unknown>, value: unknown): void;
    clone(schema?: yaml.Schema): Collection;
    delete(key: unknown): boolean;
    deleteIn(path: Iterable<unknown>): boolean;
    get(key: unknown, keepScalar: true): undefined | Scalar<T>;
    get(key: unknown, keepScalar?: false): undefined | T;
    get(key: unknown, keepScalar?: boolean): undefined | T | Scalar<T>;
    getIn(path: Iterable<unknown>, keepScalar?: boolean): unknown;
    has(key: unknown): boolean;
    hasAllNullValues(allowScalar?: boolean): boolean;
    hasIn(path: Iterable<unknown>): boolean;
    set(key: unknown, value: T): void;
    setIn(path: Iterable<unknown>, value: unknown): void;
    toJSON(_?: unknown, ctx?: ToJSContext): unknown[];
    toString(ctx?: StringifyContext, onComment?: (() => void), onChompKeep?: (() => void)): string;
}

Type Parameters

Hierarchy (view full)

Properties

[NODE_TYPE]: symbol
anchor?: string

An optional anchor on this node. Used by alias nodes.

comment?: null | string

A comment on or immediately after this

commentBefore?: null | string

A comment before this

flow?: boolean

If true, stringify this and all child nodes using flow rather than block styles.

items: T[]
range: Range

The [start, value-end, node-end] character offsets for the part of the source parsed into this node (undefined if not parsed). The value-end and node-end positions are themselves not included in their respective ranges.

schema: undefined | yaml.Schema
spaceBefore?: boolean

A blank line before this node and its commentBefore

The CST token that was composed into this node.

tag?: string

A fully qualified tag, if required

Methods

  • Adds a value to the collection.

    Parameters

    • value: T

    Returns void

  • Adds a value to the collection. For !!map and !!omap the value must be a Pair instance or a { key, value } object, which may not have a key that already exists in the map.

    Parameters

    • path: Iterable<unknown>
    • value: unknown

    Returns void

  • Create a copy of this collection.

    Parameters

    • Optionalschema: yaml.Schema

      If defined, overwrites the original's schema

    Returns Collection

  • Removes a value from the collection.

    key must contain a representation of an integer for this to succeed. It may be wrapped in a Scalar.

    Parameters

    • key: unknown

    Returns boolean

    true if the item was found and removed.

  • Removes a value from the collection.

    Parameters

    • path: Iterable<unknown>

    Returns boolean

    true if the item was found and removed.

  • Returns item at key, or undefined if not found. By default unwraps scalar values from their surrounding node; to disable set keepScalar to true (collections are always returned intact).

    key must contain a representation of an integer for this to succeed. It may be wrapped in a Scalar.

    Parameters

    • key: unknown
    • keepScalar: true

    Returns undefined | Scalar<T>

  • Returns item at key, or undefined if not found. By default unwraps scalar values from their surrounding node; to disable set keepScalar to true (collections are always returned intact).

    Parameters

    • key: unknown
    • OptionalkeepScalar: false

    Returns undefined | T

  • Returns item at key, or undefined if not found. By default unwraps scalar values from their surrounding node; to disable set keepScalar to true (collections are always returned intact).

    Parameters

    • key: unknown
    • OptionalkeepScalar: boolean

    Returns undefined | T | Scalar<T>

  • Returns item at key, or undefined if not found. By default unwraps scalar values from their surrounding node; to disable set keepScalar to true (collections are always returned intact).

    Parameters

    • path: Iterable<unknown>
    • OptionalkeepScalar: boolean

    Returns unknown

  • Checks if the collection includes a value with the key key.

    key must contain a representation of an integer for this to succeed. It may be wrapped in a Scalar.

    Parameters

    • key: unknown

    Returns boolean

  • Parameters

    • OptionalallowScalar: boolean

    Returns boolean

  • Checks if the collection includes a value with the key key.

    Parameters

    • path: Iterable<unknown>

    Returns boolean

  • Sets a value in this collection. For !!set, value needs to be a boolean to add/remove the item from the set.

    If key does not contain a representation of an integer, this will throw. It may be wrapped in a Scalar.

    Parameters

    • key: unknown
    • value: T

    Returns void

  • Sets a value in this collection. For !!set, value needs to be a boolean to add/remove the item from the set.

    Parameters

    • path: Iterable<unknown>
    • value: unknown

    Returns void

  • A plain JS representation of this node

    Parameters

    • Optional_: unknown
    • Optionalctx: ToJSContext

    Returns unknown[]

  • Parameters

    • Optionalctx: StringifyContext
    • OptionalonComment: (() => void)
        • (): void
        • Returns void

    • OptionalonChompKeep: (() => void)
        • (): void
        • Returns void

    Returns string