import type { IDataObject, IExecuteFunctions, IHookFunctions, ILoadOptionsFunctions, IHttpRequestMethods, IHttpRequestOptions, ICredentialDataDecryptedObject, JsonObject } from 'n8n-workflow'; import type { FilterMapping } from './types'; export interface IHuduRequestOptions { method: IHttpRequestMethods; endpoint: string; body?: IDataObject; qs?: IDataObject; paginate?: boolean; contentType?: 'application/json' | 'application/x-www-form-urlencoded' | 'multipart/form-data'; } export declare function sanitizeQueryParams(qs: T): T; export declare function sanitizeRequestPayload(body: T): T; export declare function toJsonObject(obj: IDataObject): JsonObject; export declare function createHuduRequest(credentials: ICredentialDataDecryptedObject, options: IHuduRequestOptions): IHttpRequestOptions; export declare function executeHuduRequest(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, requestOptions: IHttpRequestOptions): Promise; export declare function parseHuduResponse(response: IDataObject | IDataObject[], resourceName?: string): IDataObject[]; export declare function huduApiRequest(this: IHookFunctions | IExecuteFunctions | ILoadOptionsFunctions, method: IHttpRequestMethods, endpoint: string, body?: IDataObject, qs?: IDataObject, resourceName?: string): Promise; export declare function handleListing(this: IExecuteFunctions | ILoadOptionsFunctions, method: IHttpRequestMethods, endpoint: string, resourceName?: string, body?: IDataObject, query?: IDataObject, returnAll?: boolean, limit?: number, postProcessFilters?: T, filterMapping?: FilterMapping): Promise; export declare function handleBinaryDownload(this: IExecuteFunctions, endpoint: string, binaryPropertyName: string, itemIndex: number): Promise;