import type { CurlArguments } from '../shared/curl-parser.js'; import type { HeaderInput } from '../shared/header.js'; import type { PathParam } from '../shared/path-params-parser.js'; import type { ErrorOr, MachineConfiguration } from '../shared/types.js'; import type { IntrospectionServiceResponse } from './helpers.js'; import type { CommonImportOptions } from './import-command.js'; export type CurlQueryParameter = { name: string; value: string; context: string; }; export type CurlImportOptions = CommonImportOptions & { curlArgs: CurlArguments; queryName?: string; rootType?: string; typePrefix?: string; pathParams: readonly PathParam[]; headers: readonly HeaderInput[]; secrets?: string[]; }; export declare const curl2sdl: ({ curlArgs, queryName, rootType, typePrefix, pathParams, headers, secrets, }: CurlImportOptions, configuration: MachineConfiguration) => Promise>; /** * Collect together all query parameters from HTTP headers and from the * pathname, and return them as a uniform list. * * @param {*} headers list of curl headers, possibly with parameters * @param {*} pathParams list of path parameters * @param {*} pathname full pathname of the REST endpoint * @returns {*} combined list of query parameters in a uniform format */ export declare const compileParameterList: (headers: HeaderInput[], pathParams: PathParam[], pathname: string) => CurlQueryParameter[]; /** * Check the header and path parameters for duplicates, and construct a * user-friendly error message describing identified problems (if any). * If no problems are found, return `null`. * * @param {*} headers list of curl headers, possibly with parameters * @param {*} pathParams list of path parameters * @param {*} url full URL of the REST endpoint * @returns {*} a message describing duplicate query parameters, or null if * there are no duplicates */ export declare const makeDuplicateParamsMessage: (headers: HeaderInput[], pathParams: PathParam[], url: string) => string | null; //# sourceMappingURL=curl2sdl.d.ts.map