functional-models
    Preparing search index...

    Function uniqueTogether

    • A validator that ensures that there is only one instance stored, that has a unique combination of values.

      Type Parameters

      • T extends Readonly<{ [s: string]: any }>

      Parameters

      • propertyKeyArray: readonly string[]

        An array of property names that create the unique match.

      Returns ModelValidatorComponent<
          T,
          Readonly<
              {
                  bulkInsert: <TData extends Readonly<{ [s: string]: any }>>(
                      instances: readonly OrmModelInstance<TData, object, object>[],
                  ) => Promise<void>;
                  count: () => Promise<number>;
                  createAndSave: <TData extends Readonly<{ [s: string]: any }>>(
                      data: OrmModelInstance<TData, object, object>,
                  ) => Promise<OrmModelInstance<TData, object, object>>;
                  delete: (id: PrimaryKeyType) => Promise<void>;
                  retrieve: <TData extends Readonly<{ [s: string]: any }>>(
                      primaryKey: PrimaryKeyType,
                  ) => Promise<Maybe<OrmModelInstance<TData, object, object>>>;
                  save: <TData extends Readonly<{ [s: string]: any }>>(
                      instance: OrmModelInstance<TData, object, object>,
                  ) => Promise<OrmModelInstance<TData, object, object>>;
                  search: <TData extends Readonly<{ [s: string]: any }>>(
                      query: OrmSearch,
                  ) => Promise<
                      Readonly<
                          {
                              instances: readonly OrmModelInstance<
                                  TData,
                                  OrmModel<TData, object, object>,
                                  object,
                              >[];
                              page?: any;
                          },
                      >,
                  >;
                  searchOne: <TData extends Readonly<{ [s: string]: any }>>(
                      query: Omit<OrmSearch, "take">,
                  ) => Promise<undefined | OrmModelInstance<TData, object, object>>;
              },
          >,
          Readonly<
              {
                  delete: () => Promise<void>;
                  save: <TData extends Readonly<{ [s: string]: any }>>() => Promise<
                      OrmModelInstance<TData, object, object>,
                  >;
              },
          >,
      >