/// import * as express from 'express'; import * as halson from 'halson'; import { Rel, Hal, Href } from './constants'; import { hal } from './decorators'; export declare class Response implements hal.Response { private static resource(resolved, root?, data?); static create(server: Object, href: string, links: Rel[], req: express.Request, res: express.Response): express.Response & hal.Response; private static initialize(response, resolved, template); json(original: (obj: any) => express.Response, data: any): express.Response; static resolve(server: Object, rel: Rel, params: any, overrides: hal.Overrides): hal.Overrides[]; private static docs(response, resolved); link(rel: Rel, overrides?: hal.Overrides): void; embed(rel: Rel, value: Object, overrides?: hal.Overrides): hal.Response; docs(name: string, href: Href): void; static filter(response: hal.Response, filter: Response.Filter): void; } export declare namespace Response { interface Private { server: Object; params: any; hal: halson.HALSONResource & Hal.Resource; root: hal.Response; resolve(rel: Rel, overrides: hal.Overrides): hal.Overrides[]; docs(resolved: hal.Overrides): void; } const Private: symbol; interface Filter { links?: (link: Hal.Link) => boolean; embeds?: (embed: Hal.Resource) => boolean; } }