import { InputField } from '@segment/actions-core';
import { RequestClient } from '@segment/actions-core';
import type { Logger, StatsClient, EngageDestinationCache } from '@segment/actions-core/destination-kit';
import type { Settings } from '../generated-types';
import { Profile } from '@segment/actions-shared';
export type ApiLookupConfig = {
    id?: string | undefined;
    name: string;
    url: string;
    method: string;
    cacheTtl: number;
    body?: string | undefined;
    headers?: object | undefined;
    responseType: string;
    shouldRetryOnRetryableError?: boolean;
};
export declare const getRequestId: ({ method, url, body, headers }: ApiLookupConfig) => string;
export declare const getCachedResponse: ({ responseType }: ApiLookupConfig, requestId: string, engageDestinationCache: EngageDestinationCache, datafeedTags: string[]) => Promise<any>;
export declare const performApiLookup: (request: RequestClient, apiLookupConfig: ApiLookupConfig, profile: Profile, statsClient: StatsClient | undefined, tags: string[], settings: Settings, logger?: Logger | undefined, engageDestinationCache?: EngageDestinationCache | undefined) => Promise<any>;
export declare const apiLookupActionFields: Record<string, InputField>;
export declare const apiLookupLiquidKey = "datafeeds";
export declare const FLAGON_NAME_DATA_FEEDS = "is-datafeeds-enabled";
