functional-models
    Preparing search index...

    Interface Orm

    An object that has both an Orm Model Factory (that can make Orm Models) as well as a loaded fetcher that can retrieve referenced models as needed. See {@see "functional-models.ModelReference"}

    interface Orm {
        fetcher: ModelInstanceFetcher<
            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>,
                    >;
                },
            >,
        >;
        Model: OrmModelFactory;
    }
    Index

    Properties

    Properties

    fetcher: ModelInstanceFetcher<
        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>,
                >;
            },
        >,
    >

    A fetcher for use with Model References

    A model factory that can produce OrmModel