# Class JsonParameterStore

Class
Module
import { JsonParameterStore } from "@tsed/schema"
Source/packages/specs/schema/src/types/domain/JsonParameterStore.ts

# Overview

class JsonParameterStore extends JsonEntityStore {
    paramType: string;
    expression: string;
    dataPath: string;
pipes<span class="token punctuation">:</span> <a href="/api/core/types/domain/Type.html"><span class="token">Type</span></a>&lt;<a href="/api/specs/schema/types/domain/PipeMethods.html"><span class="token">PipeMethods</span></a>&gt;<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>

<span class="token keyword">readonly</span> parameter<span class="token punctuation">:</span> <a href="/api/specs/schema/types/domain/JsonParameter.html"><span class="token">JsonParameter</span></a><span class="token punctuation">;</span>
<span class="token keyword">readonly</span> parent<span class="token punctuation">:</span> <a href="/api/specs/schema/types/domain/JsonMethodStore.html"><span class="token">JsonMethodStore</span></a><span class="token punctuation">;</span>
<span class="token keyword">constructor</span><span class="token punctuation">(</span>options<span class="token punctuation">:</span> <a href="/api/specs/schema/types/domain/JsonParameterStoreOptions.html"><span class="token">JsonParameterStoreOptions</span></a><span class="token punctuation">)</span><span class="token punctuation">;</span>
get <span class="token function">nestedGenerics</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/core/types/domain/Type.html"><span class="token">Type</span></a>&lt;<span class="token keyword">any</span>&gt;<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
set <span class="token function">nestedGenerics</span><span class="token punctuation">(</span>nestedGenerics<span class="token punctuation">:</span> <a href="/api/core/types/domain/Type.html"><span class="token">Type</span></a>&lt;<span class="token keyword">any</span>&gt;<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

get <span class="token function">required</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>
set <span class="token function">required</span><span class="token punctuation">(</span>value<span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
get <span class="token function">allowedRequiredValues</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
<span class="token keyword">static</span> getParams&lt;T <span class="token keyword">extends</span> JsonParameterStore<span class="token punctuation"> = </span>JsonParameterStore&gt;<span class="token punctuation">(</span>target<span class="token punctuation">:</span> <a href="/api/core/types/domain/Type.html"><span class="token">Type</span></a>&lt;<span class="token keyword">any</span>&gt;<span class="token punctuation">,</span> propertyKey<span class="token punctuation">:</span> <span class="token keyword">string</span> | symbol<span class="token punctuation">)</span><span class="token punctuation">:</span> T<span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
<span class="token keyword">static</span> <span class="token function">get</span><span class="token punctuation">(</span>target<span class="token punctuation">:</span> <a href="/api/core/types/domain/Type.html"><span class="token">Type</span></a>&lt;<span class="token keyword">any</span>&gt;<span class="token punctuation">,</span> propertyKey<span class="token punctuation">:</span> <span class="token keyword">string</span> | symbol<span class="token punctuation">,</span> index<span class="token punctuation">:</span> <span class="token keyword">number</span><span class="token punctuation">)</span><span class="token punctuation">:</span> JsonParameterStore<span class="token punctuation">;</span>

<span class="token function">isRequired</span><span class="token punctuation">(</span>value<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">boolean</span><span class="token punctuation">;</span>
<span class="token keyword">protected</span> <span class="token function">getSchema</span><span class="token punctuation">(</span>type<span class="token punctuation">:</span> <span class="token keyword">any</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <a href="/api/specs/schema/types/domain/JsonSchema.html"><span class="token">JsonSchema</span></a><span class="token punctuation">;</span>
<span class="token keyword">protected</span> <span class="token function">build</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">:</span> <span class="token keyword">void</span><span class="token punctuation">;</span>

}

# Members

paramType: string;

expression: string;

dataPath: string;

pipes: Type<PipeMethods>[];

Define pipes can be called by the framework to transform input parameter


readonly parameter: JsonParameter;

Ref to JsonParameter when the decorated object is a parameter.


readonly parent: JsonMethodStore;

get nestedGenerics(): Type<any>[][];

set nestedGenerics(nestedGenerics: Type<any>[][]);

get required(): boolean;

Return the required state.


set required(value: boolean);

get allowedRequiredValues(): any[];

static getParams<T extends JsonParameterStore = JsonParameterStore>(target: Type<any>, propertyKey: string | symbol): T[];

static get(target: Type<any>, propertyKey: string | symbol, index: number): JsonParameterStore;

isRequired(value: any): boolean;

Check precondition between value, required and allowedRequiredValues to know if the entity is required.


protected getSchema(type: any): JsonSchema;

protected build(): void;