dynamodb-toolbox
Version:
Lightweight and type-safe query builder for DynamoDB and TypeScript.
31 lines (30 loc) • 1.32 kB
TypeScript
import type { Constant } from 'hotscript';
import type { Piped } from './pipe.js';
import type { SerializableTransformer, Transformer } from './transformer.js';
interface JSONStringifierOptions {
space?: string | number;
replacer?: (this: any, key: string, value: any) => any;
reviver?: (this: any, key: string, value: any) => any;
}
export interface JSONStringifierDTO {
transformerId: 'jsonStringify';
space?: string | number;
}
export declare class JSONStringifier implements SerializableTransformer<unknown, unknown, string, Constant<string>, JSONStringifierDTO> {
_typeModifier: Constant<string>;
transformerId: 'jsonStringify';
space?: string | number;
replacer?: (this: any, key: string, value: any) => any;
reviver?: (this: any, key: string, value: any) => any;
constructor({ space, replacer, reviver }?: JSONStringifierOptions);
encode(formatted: unknown): string;
decode(transformed: string): unknown;
toJSON(): {
space?: string | number | undefined;
transformerId: "jsonStringify";
};
pipe<TRANSFORMER extends Transformer<string>>(transformer: TRANSFORMER): Piped<[this, TRANSFORMER]>;
}
type JSONStringify = (options?: JSONStringifierOptions) => JSONStringifier;
export declare const jsonStringify: JSONStringify;
export {};