import type { IDataMockInit, IHttpResponseInit, IHarTimingInit } from '@pawel-up/data-mock/types.js';
import { Types } from '@pawel-up/data-mock/Types.js';
import { Time } from '@pawel-up/data-mock/Time.js';
import { Lorem } from '@pawel-up/data-mock/Lorem.js';
import { Internet } from '@pawel-up/data-mock/Internet.js';
import { Har } from '@pawel-up/data-mock/Har.js';
import Http from '@pawel-up/data-mock/Http.js';
import { IHttpResponse } from '../../models/HttpResponse.js';
import { IResponse } from '../../models/Response.js';
import { IRequestsSize } from '../../models/RequestsSize.js';
import { IResponseRedirect } from '../../models/ResponseRedirect.js';
import { DeserializedPayload } from '../../lib/transformers/PayloadSerializer.js';
export interface IResponseInit extends IHttpResponseInit, IHarTimingInit {
    /**
     * The first number of the status group. Other 2 are auto generated
     */
    statusGroup?: number;
    /**
     * Whether to generate timings object
     */
    timings?: boolean;
}
export declare class Response {
    types: Types;
    lorem: Lorem;
    time: Time;
    http: Http;
    har: Har;
    internet: Internet;
    constructor(init?: IDataMockInit);
    protected _getPayload(mime?: string): DeserializedPayload;
    httpResponse(init?: IResponseInit): Promise<IHttpResponse>;
    response(init?: IResponseInit): Promise<IResponse>;
    size(): IRequestsSize;
    redirect(init?: IResponseInit): Promise<IResponseRedirect>;
    redirects(size?: number, init?: IResponseInit): Promise<IResponseRedirect[]>;
}
//# sourceMappingURL=Response.d.ts.map