import { Api } from './Api';
import { RouteGateway } from './RouteGateway';
import { Func } from '../types/Func';
import { Uri } from '../types/Uri';
import { Mapper } from '../utils/Mapper';
import { RequestOptions } from '../http/RequestOptions';
import { PageList } from '../types/PageList';
import { Json } from '../types/Json';
import { Optional } from '../types/Types';
export declare class MappedRouteGateway extends RouteGateway {
    readonly route: Func<Uri>;
    readonly routeId: Func<Uri>;
    readonly map: Mapper;
    readonly api: Api;
    constructor(route: Func<Uri>, routeId: Func<Uri>, map?: Mapper, api?: Api);
    get(uri: Uri, options?: RequestOptions): Promise<PageList<Json>>;
    getOne(uri: Uri, options?: RequestOptions): Promise<Optional<Json>>;
    add(item: Json): Promise<Json>;
    update(item: Json): Promise<Json>;
}
