Class Repository<Data, IdType, IdName, FlatData>

Repository.

Type Parameters

Hierarchy

  • Service
    • Repository

Constructors

  • Constructor.

    Type Parameters

    • Data extends ModelData = ModelData

    • IdType extends unknown = unknown

    • IdName extends string = "id"

    • FlatData extends ModelData = {
          [k in string | number | symbol]: Data[k]
      }

    Parameters

    • container: ServiceContainer
    • modelName: string

    Returns Repository<Data, IdType, IdName, FlatData>

Properties

container: ServiceContainer

Container.

Accessors

Methods

  • Add service.

    Type Parameters

    • T extends object

    Parameters

    • ctor: Constructor<T>
    • Rest ...args: any[]

    Returns Repository<Data, IdType, IdName, FlatData>

  • Create.

    Parameters

    • data: {
          [k in string | number | symbol]: (FlatData extends {
                  [K in string]: any
              }
              ? PartialBy<FlatData, IdName>
              : FlatData)[k]
      }
    • Optional filter: ItemFilterClause

    Returns Promise<FlatData>

  • Get service.

    Type Parameters

    • T extends object

    Parameters

    • ctor: Constructor<T>
    • Rest ...args: any[]

    Returns T

  • Has service.

    Type Parameters

    • T extends object

    Parameters

    • ctor: Constructor<T>

    Returns boolean

  • Patch.

    Parameters

    • data: {
          [k in string | number | symbol]: Partial<Omit<Data, IdName>>[k]
      }
    • Optional where: WhereClause

    Returns Promise<number>

  • Patch by id.

    Parameters

    • id: IdType
    • data: {
          [k in string | number | symbol]: Partial<Omit<Data, IdName>>[k]
      }
    • Optional filter: ItemFilterClause

    Returns Promise<FlatData>

  • Replace by id.

    Parameters

    • id: IdType
    • data: {
          [k in string | number | symbol]: Omit<FlatData, IdName>[k]
      }
    • Optional filter: ItemFilterClause

    Returns Promise<FlatData>

  • Replace or create.

    Parameters

    • data: {
          [k in string | number | symbol]: (Data extends {
                  [K in string]: any
              }
              ? PartialBy<Data, IdName>
              : Data)[k]
      }
    • Optional filter: ItemFilterClause

    Returns Promise<FlatData>

  • Use service.

    Type Parameters

    • T extends object

    Parameters

    • ctor: Constructor<T>
    • Rest ...args: any[]

    Returns Repository<Data, IdType, IdName, FlatData>

Generated using TypeDoc