index.d.ts 807 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
declare namespace stripJsonComments {
	interface Options {
		/**
		Replace comments with whitespace instead of stripping them entirely.

		@default true
		*/
		readonly whitespace?: boolean;
	}
}

/**
Strip comments from JSON. Lets you use comments in your JSON files!

It will replace single-line comments `//` and multi-line comments `/**\/` with whitespace. This allows JSON error positions to remain as close as possible to the original source.

@param jsonString - Accepts a string with JSON.
@returns A JSON string without comments.

@example
```
const json = `{
	// Rainbows
	"unicorn": "cake"
}`;

JSON.parse(stripJsonComments(json));
//=> {unicorn: 'cake'}
```
*/
declare function stripJsonComments(
	jsonString: string,
	options?: stripJsonComments.Options
): string;

export = stripJsonComments;