@avonjs/avonjs
Version:
A fluent Node.js API generator.
36 lines (35 loc) • 1.26 kB
TypeScript
import { type AbstractMixable, type AnyValue, type Model, type OrderingCallback } from '../Contracts';
import type AvonRequest from '../Http/Requests/AvonRequest';
import type { Ordering } from '../Orderings';
import type { Repository } from '../Repositories';
declare const _default: <T extends AbstractMixable = AbstractMixable>(Parent: T) => (abstract new (...args: import("../Contracts").Args) => {
/**
* The callback to be used for the field's default value.
*/
orderableCallback?: OrderingCallback;
/**
* Apply the order to the given query.
*/
applyOrdering(request: AvonRequest, queryBuilder: Repository<Model>, value: AnyValue): void;
/**
* Make the field order.
*/
resolveOrdering(request: AvonRequest): Ordering | undefined;
/**
* The callback used to determine if the field is orderable.
*/
orderable(callback?: OrderingCallback): any;
/**
* Define the default orderable callback.
*/
defaultOrderingCallback(): OrderingCallback;
/**
* Make the field order.
*/
makeOrdering(request: AvonRequest): Ordering;
/**
* Define orderable attribute.
*/
orderableAttribute(request: AvonRequest): string;
}) & T;
export default _default;