UNPKG

1.19 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright (c) 2016 The Polymer Project Authors. All rights reserved.
4 * This code may only be used under the BSD style license found at
5 * http://polymer.github.io/LICENSE.txt
6 * The complete set of authors may be found at
7 * http://polymer.github.io/AUTHORS.txt
8 * The complete set of contributors may be found at
9 * http://polymer.github.io/CONTRIBUTORS.txt
10 * Code distributed by Google as part of the polymer project is also
11 * subject to an additional IP rights grant found at
12 * http://polymer.github.io/PATENTS.txt
13 */
14import { SourceRange } from '../model/model';
15import { ParsedDocument, StringifyOptions } from '../parser/document';
16export declare type Json = JsonObject | JsonArray | number | string | boolean | null;
17export interface JsonObject {
18 [key: string]: Json;
19}
20export interface JsonArray extends Array<Json> {
21}
22export interface Visitor {
23 visit(node: Json): void;
24}
25export declare class ParsedJsonDocument extends ParsedDocument<Json, Visitor> {
26 readonly type = "json";
27 visit(visitors: Visitor[]): void;
28 private _visit;
29 protected _sourceRangeForNode(_node: Json): SourceRange;
30 stringify(options?: StringifyOptions): string;
31}