Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, THasSetter, TFromSnapshotOverride, TToSnapshotOverride>

A model property.

Type parameters

  • TPropValue

  • TPropCreationValue

  • TTransformedValue

  • TTransformedCreationValue

  • TIsRequired

  • TIsId: boolean = false

  • THasSetter = never

  • TFromSnapshotOverride = never

  • TToSnapshotOverride = never

Hierarchy

  • ModelProp

Index

Properties

_internal: { $creationValueType: TPropCreationValue; $fromSnapshotOverride: TFromSnapshotOverride; $hasSetter: THasSetter; $isId: TIsId; $isRequired: TIsRequired; $toSnapshotOverride: TToSnapshotOverride; $transformedCreationValueType: TTransformedCreationValue; $transformedValueType: TTransformedValue; $valueType: TPropValue; defaultFn: (() => TPropValue) | typeof noDefaultValue; defaultValue: TPropValue | typeof noDefaultValue; isId: boolean; setter: boolean | "assign"; transform: undefined | { transform: any; untransform: any }; typeChecker: undefined | TypeChecker | LateTypeChecker; fromSnapshotProcessor?: any; toSnapshotProcessor?: any }

Type declaration

  • $creationValueType: TPropCreationValue
  • $fromSnapshotOverride: TFromSnapshotOverride
  • $hasSetter: THasSetter
  • $isId: TIsId
  • $isRequired: TIsRequired
  • $toSnapshotOverride: TToSnapshotOverride
  • $transformedCreationValueType: TTransformedCreationValue
  • $transformedValueType: TTransformedValue
  • $valueType: TPropValue
  • defaultFn: (() => TPropValue) | typeof noDefaultValue
  • defaultValue: TPropValue | typeof noDefaultValue
  • isId: boolean
  • setter: boolean | "assign"
  • transform: undefined | { transform: any; untransform: any }
  • typeChecker: undefined | TypeChecker | LateTypeChecker
  • fromSnapshotProcessor?:function
    • fromSnapshotProcessor(sn: unknown): unknown
    • Parameters

      • sn: unknown

      Returns unknown

  • toSnapshotProcessor?:function
    • toSnapshotProcessor(sn: unknown): unknown
    • Parameters

      • sn: unknown

      Returns unknown

Methods

  • withSetter(): ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, string, TFromSnapshotOverride, TToSnapshotOverride>
  • withSetter(mode: "assign"): ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, string, TFromSnapshotOverride, TToSnapshotOverride>
  • Returns ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, string, TFromSnapshotOverride, TToSnapshotOverride>

  • deprecated

    Setter methods are preferred.

    Parameters

    • mode: "assign"

    Returns ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, string, TFromSnapshotOverride, TToSnapshotOverride>

  • withSnapshotProcessor<FS, TS, This>(processor: { fromSnapshot?: any; toSnapshot?: any }): ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, THasSetter, FS, TS>
  • Type parameters

    • FS = TFromSnapshotOverride

    • TS = TToSnapshotOverride

    • This: ModelProp<any, any, any, any, any, any, any, any, any, This> = ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, THasSetter, TFromSnapshotOverride, TToSnapshotOverride>

    Parameters

    • processor: { fromSnapshot?: any; toSnapshot?: any }
      • fromSnapshot?:function
        • fromSnapshot(sn: FS): IsNeverType<This["_internal"]["$fromSnapshotOverride"], SnapshotInOf<This["_internal"]["$creationValueType"]>, This["_internal"]["$fromSnapshotOverride"]>
        • Parameters

          • sn: FS

          Returns IsNeverType<This["_internal"]["$fromSnapshotOverride"], SnapshotInOf<This["_internal"]["$creationValueType"]>, This["_internal"]["$fromSnapshotOverride"]>

      • toSnapshot?:function
        • toSnapshot(sn: IsNeverType<This["_internal"]["$toSnapshotOverride"], SnapshotOutOf<This["_internal"]["$valueType"]>, This["_internal"]["$toSnapshotOverride"]>): TS
        • Parameters

          • sn: IsNeverType<This["_internal"]["$toSnapshotOverride"], SnapshotOutOf<This["_internal"]["$valueType"]>, This["_internal"]["$toSnapshotOverride"]>

          Returns TS

    Returns ModelProp<TPropValue, TPropCreationValue, TTransformedValue, TTransformedCreationValue, TIsRequired, TIsId, THasSetter, FS, TS>

  • withTransform<TTV>(transform: ModelPropTransform<NonNullable<TPropValue>, TTV>): ModelProp<TPropValue, TPropCreationValue, TTV | Extract<TPropValue, undefined | null>, TTV | Extract<TPropCreationValue, undefined | null>, TIsRequired, TIsId, THasSetter, TFromSnapshotOverride, TToSnapshotOverride>
  • Sets a transform for the property instance value.

    Type parameters

    • TTV

      Transformed value type.

    Parameters

    Returns ModelProp<TPropValue, TPropCreationValue, TTV | Extract<TPropValue, undefined | null>, TTV | Extract<TPropCreationValue, undefined | null>, TIsRequired, TIsId, THasSetter, TFromSnapshotOverride, TToSnapshotOverride>

Generated using TypeDoc