json-p3
Version:
JSONPath, JSON Pointer and JSON Patch
36 lines (35 loc) • 1.54 kB
TypeScript
import { JSONPathEnvironment } from "../environment";
import { LogicalExpression } from "../expression";
import { JSONPathNode } from "../node";
import { JSONPathSelector } from "../selectors";
import { Token } from "../token";
import { type SerializationOptions } from "../types";
export declare class KeySelector extends JSONPathSelector {
readonly environment: JSONPathEnvironment;
readonly token: Token;
readonly key: string;
constructor(environment: JSONPathEnvironment, token: Token, key: string);
resolve(node: JSONPathNode): JSONPathNode[];
lazyResolve(node: JSONPathNode): Generator<JSONPathNode>;
toString(options?: SerializationOptions): string;
}
/**
* Object property name selector or array index selector.
*/
export declare class KeysSelector extends JSONPathSelector {
readonly environment: JSONPathEnvironment;
readonly token: Token;
constructor(environment: JSONPathEnvironment, token: Token);
resolve(node: JSONPathNode): JSONPathNode[];
lazyResolve(node: JSONPathNode): Generator<JSONPathNode>;
toString(): string;
}
export declare class KeysFilterSelector extends JSONPathSelector {
readonly environment: JSONPathEnvironment;
readonly token: Token;
readonly expression: LogicalExpression;
constructor(environment: JSONPathEnvironment, token: Token, expression: LogicalExpression);
resolve(node: JSONPathNode): JSONPathNode[];
lazyResolve(node: JSONPathNode): Generator<JSONPathNode>;
toString(options?: SerializationOptions): string;
}