import { DynamicFieldItem, DynamicFieldError, RequestClient, Features } from '@segment/actions-core';
import { Payload } from './sync/generated-types';
import { StatsContext } from '@segment/actions-core/destination-kit';
interface AudienceCreationResponse {
    id: string;
}
interface GetSingleAudienceResponse {
    name: string;
    id: string;
}
interface FacebookResponseError {
    error: {
        message: string;
        type: string;
        code: number;
    };
}
export declare const generateData: (payloads: Payload[]) => (string | number)[][];
export declare const getApiVersion: (features?: Features, statsContext?: StatsContext) => string;
export default class FacebookClient {
    request: RequestClient;
    adAccountId: string;
    features: Features | undefined;
    baseUrl: string;
    constructor(request: RequestClient, adAccountId: string, features?: Features, statsContext?: StatsContext);
    createAudience: (name: string) => Promise<import("@segment/actions-core/src").ModifiedResponse<AudienceCreationResponse>>;
    getSingleAudience: (audienceId: string) => Promise<{
        data?: GetSingleAudienceResponse;
        error?: FacebookResponseError;
    }>;
    getAllAudiences: () => Promise<{
        choices: DynamicFieldItem[];
        error: DynamicFieldError | undefined;
    }>;
    syncAudience: (input: {
        audienceId: string;
        payloads: Payload[];
        deleteUsers?: boolean;
    }) => Promise<import("@segment/actions-core/src").ModifiedResponse<unknown>>;
    private formatAdAccount;
}
export {};
