functional-models
    Preparing search index...

    Interface QueryBuilder

    A search builder is a structured way to create a complex query.

    interface QueryBuilder {
        compile: () => OrmSearch;
        complex: (subBuilderFunc: SubBuilderFunction) => BuilderV2Link;
        datesAfter: (
            key: string,
            jsDate: string | Date,
            options?: { equalToAndAfter?: boolean; valueType?: DatastoreValueType },
        ) => BuilderV2Link;
        datesBefore: (
            key: string,
            jsDate: string | Date,
            options?: { equalToAndBefore?: boolean; valueType?: DatastoreValueType },
        ) => BuilderV2Link;
        pagination: (
            value: any,
        ) => Readonly<
            {
                compile: () => OrmSearch;
                pagination: (value: any) => Readonly<{ pagination: ...; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2;
        property: (
            key: string,
            value: any,
            options?: Partial<PropertyOptions>,
        ) => BuilderV2Link;
        sort: (
            key: string,
            sortOrder?: SortOrder,
        ) => Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: ...; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2;
        take: (
            count: number,
        ) => Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (count: number) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: ...; compile: () => OrmSearch; }> & Readonly<...>...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2;
    }
    Index

    Properties

    compile: () => OrmSearch

    Compiles the builder into a search query.

    complex: (subBuilderFunc: SubBuilderFunction) => BuilderV2Link

    Creates a query that has nested property queries.

    Type declaration

    datesAfter: (
        key: string,
        jsDate: string | Date,
        options?: { equalToAndAfter?: boolean; valueType?: DatastoreValueType },
    ) => BuilderV2Link

    Searches for elements that are after the given date. NOTE: It can be very important to set the valueType to either string or Date depending on what datastore you are using.

    Type declaration

      • (
            key: string,
            jsDate: string | Date,
            options?: { equalToAndAfter?: boolean; valueType?: DatastoreValueType },
        ): BuilderV2Link
      • Parameters

        • key: string

          The property name/key to use.

        • jsDate: string | Date

          The date to search.

        • Optionaloptions: { equalToAndAfter?: boolean; valueType?: DatastoreValueType }

          Additional options.

        Returns BuilderV2Link

    datesBefore: (
        key: string,
        jsDate: string | Date,
        options?: { equalToAndBefore?: boolean; valueType?: DatastoreValueType },
    ) => BuilderV2Link

    Searches for elements that are before the given date. NOTE: It can be very important to set the valueType to either string or Date depending on what datastore you are using.

    Type declaration

      • (
            key: string,
            jsDate: string | Date,
            options?: { equalToAndBefore?: boolean; valueType?: DatastoreValueType },
        ): BuilderV2Link
      • Parameters

        • key: string

          The property name/key to use.

        • jsDate: string | Date

          The date to search.

        • Optionaloptions: { equalToAndBefore?: boolean; valueType?: DatastoreValueType }

          Additional options.

        Returns BuilderV2Link

    pagination: (
        value: any,
    ) => Readonly<
        {
            compile: () => OrmSearch;
            pagination: (value: any) => Readonly<{ pagination: ...; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
            sort: (
                key: string,
                sortOrder?: SortOrder,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            take: (
                count: number,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
        },
    > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2

    Creates a pagination.

    Type declaration

      • (
            value: any,
        ): Readonly<
            {
                compile: () => OrmSearch;
                pagination: (value: any) => Readonly<{ pagination: ...; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2
      • Parameters

        • value: any

          Can be anything

        Returns Readonly<
            {
                compile: () => OrmSearch;
                pagination: (value: any) => Readonly<{ pagination: ...; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2

    property: (
        key: string,
        value: any,
        options?: Partial<PropertyOptions>,
    ) => BuilderV2Link

    Search a value

    Type declaration

    sort: (
        key: string,
        sortOrder?: SortOrder,
    ) => Readonly<
        {
            compile: () => OrmSearch;
            pagination: (
                value: any,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: ...; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
            take: (
                count: number,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
        },
    > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2

    Creates a sort.

    Type declaration

      • (
            key: string,
            sortOrder?: SortOrder,
        ): Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: ...; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2
      • Parameters

        • key: string

          The key to sort on

        • OptionalsortOrder: SortOrder

          The order to sort by. Defaults to ascending.

        Returns Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: ...; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; compile: () => OrmSearch; }> & Readonly<...>...;
                take: (
                    count: number,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2

    take: (
        count: number,
    ) => Readonly<
        {
            compile: () => OrmSearch;
            pagination: (
                value: any,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            sort: (
                key: string,
                sortOrder?: SortOrder,
            ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
            take: (count: number) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: ...; compile: () => OrmSearch; }> & Readonly<...>...;
        },
    > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2

    Maximum number of elements to return.

    Type declaration

      • (
            count: number,
        ): Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (count: number) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: ...; compile: () => OrmSearch; }> & Readonly<...>...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2
      • Parameters

        • count: number

          The count

        Returns Readonly<
            {
                compile: () => OrmSearch;
                pagination: (
                    value: any,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                sort: (
                    key: string,
                    sortOrder?: SortOrder,
                ) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: (count: number) => Readonly<...> & ... 1 more ... & InnerBuilderV2; ...;
                take: (count: number) => Readonly<{ pagination: (value: any) => Readonly<...> & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder; }> & InnerBuilderV2; sort: (key: string, sortOrder?: SortOrder | undefined) => Readonly<...> & ... 1 more ... & InnerBuilderV2; take: ...; compile: () => OrmSearch; }> & Readonly<...>...;
            },
        > & Readonly<{ and: () => QueryBuilder; or: () => QueryBuilder }> & InnerBuilderV2