npm.io
2.1.4 • Published 2 years ago

@types/json-to-ast

Licence
MIT
Version
2.1.4
Deps
0
Size
5 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/json-to-ast

Summary

This package contains type definitions for json-to-ast (https://github.com/vtrushin/json-to-ast).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/json-to-ast.

index.d.ts

declare namespace parse {
    interface Options {
        /**
         * Appends location information.
         *
         * @default true
         */
        loc?: boolean | undefined;

        /**
         * Appends source information to node’s location.
         *
         * @default null
         */
        source?: string | undefined;
    }

    type ValueNode = ObjectNode | ArrayNode | LiteralNode;

    interface Position {
        line: number;
        column: number;
        offset: number;
    }

    interface Location {
        start: Position;
        end: Position;
        source: string | null;
    }

    interface ASTNode {
        type: string;
        loc?: Location | undefined;
    }

    interface ObjectNode extends ASTNode {
        type: "Object";
        children: PropertyNode[];
    }

    interface PropertyNode extends ASTNode {
        type: "Property";
        key: IdentifierNode;
        value: ValueNode;
    }

    interface IdentifierNode extends ASTNode {
        type: "Identifier";
        value: string;
        raw: string;
    }

    interface ArrayNode extends ASTNode {
        type: "Array";
        children: ValueNode[];
    }

    interface LiteralNode extends ASTNode {
        type: "Literal";
        value: string | number | boolean | null;
        raw: string;
    }
}

declare function parse(json: string, settings?: parse.Options): parse.ValueNode;

export = parse;
export as namespace jsonToAst;

Additional Details

  • Last updated: Tue, 07 Nov 2023 0337 GMT
  • Dependencies: none

Credits

These definitions were written by ExE Boss.