import { ICloudResponseDebug } from '../../interfaces/common/icloud-response-debug.interface';
import { ICloudResponse } from '../../interfaces/common/icloud-response.interface';
import { Pagination } from '../common';
import { ContentItem } from './content-item.class';
export declare namespace ItemResponses {
    class DeliveryItemListingResponse<TItem extends ContentItem> implements ICloudResponse {
        items: TItem[];
        pagination: Pagination;
        debug: ICloudResponseDebug;
        /**
         * Indicates if response contains any items
         */
        isEmpty: boolean;
        /**
        * First item or undefined if none is found
        */
        firstItem: TItem;
        /**
        * Last item or undefined if response contains no items
        */
        lastItem: TItem;
        /**
        * Response containing multiple item
        * @constructor
        * @param {TItem[]} items - Collection of content items
        * @param {Pagination} pagination - Pagination object
        * @param {ICloudResponseDebug} debug - Debug information from the request
        */
        constructor(items: TItem[], pagination: Pagination, debug: ICloudResponseDebug);
        private initIsEmpty();
        private initFirstAndLastItem();
    }
    class DeliveryItemResponse<TItem extends ContentItem> implements ICloudResponse {
        item: TItem;
        debug: ICloudResponseDebug;
        /**
         * Indicates if response contains item
         */
        isEmpty: boolean;
        /**
        * Response containing single item
        * @constructor
        * @param {TItem} item - Returned item
        * @param {ICloudResponseDebug} debug - Debug information from the request
        */
        constructor(item: TItem, debug: ICloudResponseDebug);
        private initIsEmpty();
    }
}
