import * as tm from "type-mapping"; import { PathUtil } from "../../path"; import { RouteData, Route } from "../route"; import { NonStringMappableKeys } from "../predicate"; export declare type SetParam = (Route<{ readonly method: DataT["method"]; readonly path: DataT["path"]; readonly param: F; readonly query: DataT["query"]; readonly body: DataT["body"]; readonly header: DataT["header"]; readonly response: DataT["response"]; }>); export declare type AssertCanSetParam = (keyof PathUtil.RawParamOf extends keyof tm.MappableInputOf ? (keyof tm.MappableInputOf extends keyof PathUtil.RawParamOf ? (NonStringMappableKeys extends never ? F : ["You must have string as MappableInput<> for these parameter names", NonStringMappableKeys]) : ["The following parameter names do not exist", Exclude, PathUtil.ParamNameOf>]) : ["The following parameter names are not mapped", Exclude, keyof tm.MappableInputOf>]); export declare function setParam(data: DataT, f: AssertCanSetParam): SetParam; //# sourceMappingURL=set-param.d.ts.map