Skip to content

DiscriminatorValue

@tsed/schema

Usage

typescript
import { DiscriminatorValue } from "@tsed/schema";

See /packages/specs/schema/src/types/decorators/class/discriminatorValue.ts.

Overview

ts
function DiscriminatorValue(value?: string, ...values: string[]): ClassDecorator;

Description

Declare a Discriminator value on a child class.

ts
export class Event {
  @DiscriminatorKey() // this property a discriminator key
  type: string;

  @Property()
  value: string;
}

@DiscriminatorValue("page_view")
export class PageView extends Event {
  @Required()
  url: string;
}

@DiscriminatorValue("action")
export class Action extends Event {
  @Required()
  event: string;
}

@DiscriminatorValue()
export class CustomAction extends Event {
  @Required()
  event: string;

  @Property()
  meta: string;
}

Released under the MIT License.