@stryke/json
Version:
A package containing JSON parsing/stringify utilities used by Storm Software.
43 lines (42 loc) • 1.6 kB
text/typescript
import { JsonPointerPath } from "@stryke/types/json";
//#region src/pointer/parse.d.ts
/**
* Escapes a JSON pointer path segment.
*
* @param segment - JSON pointer path segment.
* @returns Escaped JSON pointer path segment.
*/
declare function escapePointerSegment(segment: string): string;
/**
* Unescapes a JSON pointer path segment.
*
* @param segment - JSON pointer path segment.
* @returns Unescaped JSON pointer path segment.
*/
declare function unescapePointerSegment(segment: string): string;
/**
* Convert JSON pointer like "/foo/bar" to array like ["", "foo", "bar"], while
* also un-escaping reserved characters.
*/
declare function parseJsonPointer(pointer: string): JsonPointerPath;
/**
* Escape and format a path array like ["", "foo", "bar"] to JSON pointer
* like "/foo/bar".
*/
declare function formatJsonPointer(path: JsonPointerPath): string;
/**
* Returns true if JSON Pointer points to root value, false otherwise.
*/
declare const isRoot: (path: string | number | JsonPointerPath) => boolean;
/**
* Returns parent path, e.g. for ['foo', 'bar', 'baz'] returns ['foo', 'bar'].
*/
declare function parent(path: JsonPointerPath): JsonPointerPath;
/**
* Check if path component can be a valid array index.
*/
declare function isValidIndex(index: string | number): boolean;
declare const isInteger: (str: string) => boolean;
//#endregion
export { isValidIndex as a, unescapePointerSegment as c, isRoot as i, formatJsonPointer as n, parent as o, isInteger as r, parseJsonPointer as s, escapePointerSegment as t };
//# sourceMappingURL=parse-B2v1cgEk.d.mts.map