/** @module data */ /** * Data transfer object that is used to pass results of paginated queries. * It contains items of retrieved page and optional total number of items. * * Most often this object type is used to send responses to paginated queries. * Pagination parameters are defined by [[PagingParams]] object. * The skip parameter in the PagingParams there means how many items to skip. * The takes parameter sets number of items to return in the page. * And the optional total parameter tells to return total number of items in the query. * * Remember: not all implementations support the total parameter * because its generation may lead to severe performance implications. * * @see [[PagingParams]] * * ### Example ### * * page := await myDataClient.getDataByFilter( * "123", * FilterParams.fromTuples("completed": true), * new PagingParams(0, 100, true) * ); */ export class DataPage { /** The items of the retrieved page. */ public data: T[]; /** The total amount of items in a request. */ public total: number; /** * Creates a new instance of data page and assigns its values. * * @param data a list of items from the retrieved page. * @param total (optional) . */ public constructor(data: T[] = null, total: number = null) { this.total = total; this.data = data; } }