import { ExecuteInput, RequestClient, StatsContext } from '@segment/actions-core';
import type { Payload as s3Payload } from './audienceEnteredS3/generated-types';
import type { Payload as sftpPayload } from './audienceEnteredSftp/generated-types';
import { SubscriptionMetadata } from '@segment/actions-core/destination-kit';
export type RawData = {
    context?: {
        personas?: {
            computation_key?: string;
            computation_class?: string;
            computation_id?: string;
        };
    };
};
export type ProcessDataInput<T extends s3Payload | sftpPayload> = {
    request: RequestClient;
    payloads: T[];
    features?: Record<string, boolean>;
    rawData?: RawData[];
    statsContext?: StatsContext;
};
export type ExecuteInputRaw<Settings, Payload, RawData, AudienceSettings = unknown> = ExecuteInput<Settings, Payload, AudienceSettings> & {
    rawData?: RawData;
};
declare function generateFile(payloads: s3Payload[] | sftpPayload[]): {
    filename: string;
    fileContents: Buffer;
};
declare function enquoteIdentifier(identifier: string): string;
declare const normalize: (key: string, value: string) => string;
declare function enrichStatsContextWithMetadata(statsContext?: StatsContext, subscriptionMetadata?: SubscriptionMetadata): void;
export { generateFile, enquoteIdentifier, normalize, enrichStatsContextWithMetadata };
