import { RequestClient, Features } from '@segment/actions-core';
import type { DynamicFieldItem } from '@segment/actions-core';
import { StatsContext } from '@segment/actions-core/destination-kit';
import { Settings } from '../generated-types';
import { NonFacebookError } from '../types';
export declare function performHook(request: RequestClient, adAccountId: string, operation?: string, audienceName?: string, existingAudienceId?: string): Promise<{
    error: NonFacebookError;
    choices: never[];
    successMessage?: undefined;
    savedData?: undefined;
} | {
    successMessage: string;
    savedData: {
        audienceId: string | undefined;
        audienceName: string;
    };
    error?: undefined;
    choices?: undefined;
} | {
    error: NonFacebookError;
    choices?: undefined;
    successMessage?: undefined;
    savedData?: undefined;
} | {
    successMessage: string;
    savedData: {
        audienceId: string;
        audienceName: string | undefined;
    };
    error?: undefined;
    choices?: undefined;
}>;
export declare function getExistingAudienceIdChoices(request: RequestClient, { settings }: {
    settings: Settings;
}): Promise<{
    error: NonFacebookError;
    choices: never[];
} | {
    choices: DynamicFieldItem[];
    error?: undefined;
}>;
export declare function getAllAudiences(request: RequestClient, adAccountId: string, features?: Features, statsContext?: StatsContext): Promise<{
    choices: DynamicFieldItem[];
    error?: NonFacebookError;
}>;
