@adocasts.com/dto
Version:
Easily make and generate DTOs from Lucid Models
17 lines (16 loc) • 1.08 kB
TypeScript
import { LucidRow, ModelPaginatorContract } from '@adonisjs/lucid/types/model';
import { SimplePaginatorDtoContract, SimplePaginatorDtoMetaContract, SimplePaginatorDtoMetaRange, StaticDto } from '../types.js';
import BaseDto from '../base/base_dto.js';
import { SimplePaginatorContract } from '@adonisjs/lucid/types/querybuilder';
export default class SimplePaginatorDto<Model, Dto extends BaseDto> implements SimplePaginatorDtoContract<Dto> {
data: Dto[];
meta: SimplePaginatorDtoMetaContract;
/**
* Constructs a new instance of the SimplePaginatorDto class.
*
* @param {SimplePaginatorContract<Model>|ModelPaginatorContract<Model>} paginator - The paginator object containing the data.
* @param {StaticDto<Model, Dto>} dto - The static DTO class used to map the data.
* @param {SimplePaginatorDtoMetaRange} [range] - Optional range for the paginator.
*/
constructor(paginator: Model extends LucidRow ? ModelPaginatorContract<Model> : SimplePaginatorContract<Model>, dto: StaticDto<Model, Dto>, range?: SimplePaginatorDtoMetaRange);
}