# PropertyMetadata Class

Module
import { PropertyMetadata } from "@tsed/common"
Source/packages/common/src/jsonschema/class/PropertyMetadata.ts

# Overview

class PropertyMetadata extends Storable implements IPropertyOptions {
    /**
     * Allowed value when the entity is required.
     * @type {Array}
     */
    allowedRequiredValues: any[];
    ignoreProperty: boolean;
    onSerialize: Function;
    onDeserialize: Function;
    constructor(target: any, propertyKey: any);
    /**
     *
     * @returns {Type<any>}
     */
    get type(): Type<any>;
    /**
     *
     * @param value
     */
    set type(value: Type<any>);
    /**
     *
     * @returns {JsonSchema}
     */
    get schema(): JsonSchema;
    /**
     * Return the required state.
     * @returns {boolean}
     */
    get required(): boolean;
    /**
     * Change the state of the required data.
     * @param value
     */
    set required(value: boolean);

}