import type { RpcTransport } from "@protobuf-ts/runtime-rpc";
import type { ServiceInfo } from "@protobuf-ts/runtime-rpc";
import type { GenerateReachForecastResponse } from "./reach_plan_service";
import type { GenerateReachForecastRequest } from "./reach_plan_service";
import type { GenerateProductMixIdeasResponse } from "./reach_plan_service";
import type { GenerateProductMixIdeasRequest } from "./reach_plan_service";
import type { ListPlannableProductsResponse } from "./reach_plan_service";
import type { ListPlannableProductsRequest } from "./reach_plan_service";
import type { ListPlannableLocationsResponse } from "./reach_plan_service";
import type { ListPlannableLocationsRequest } from "./reach_plan_service";
import type { UnaryCall } from "@protobuf-ts/runtime-rpc";
import type { RpcOptions } from "@protobuf-ts/runtime-rpc";
/**
 * Reach Plan Service gives users information about audience size that can
 * be reached through advertisement on YouTube. In particular,
 * GenerateReachForecast provides estimated number of people of specified
 * demographics that can be reached by an ad in a given market by a campaign of
 * certain duration with a defined budget.
 *
 * @generated from protobuf service google.ads.googleads.v11.services.ReachPlanService
 */
export interface IReachPlanServiceClient {
    /**
     * Returns the list of plannable locations (for example, countries).
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: ListPlannableLocations(google.ads.googleads.v11.services.ListPlannableLocationsRequest) returns (google.ads.googleads.v11.services.ListPlannableLocationsResponse);
     */
    listPlannableLocations(input: ListPlannableLocationsRequest, options?: RpcOptions): UnaryCall<ListPlannableLocationsRequest, ListPlannableLocationsResponse>;
    /**
     * Returns the list of per-location plannable YouTube ad formats with allowed
     * targeting.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: ListPlannableProducts(google.ads.googleads.v11.services.ListPlannableProductsRequest) returns (google.ads.googleads.v11.services.ListPlannableProductsResponse);
     */
    listPlannableProducts(input: ListPlannableProductsRequest, options?: RpcOptions): UnaryCall<ListPlannableProductsRequest, ListPlannableProductsResponse>;
    /**
     * Generates a product mix ideas given a set of preferences. This method
     * helps the advertiser to obtain a good mix of ad formats and budget
     * allocations based on its preferences.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [ReachPlanError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: GenerateProductMixIdeas(google.ads.googleads.v11.services.GenerateProductMixIdeasRequest) returns (google.ads.googleads.v11.services.GenerateProductMixIdeasResponse);
     */
    generateProductMixIdeas(input: GenerateProductMixIdeasRequest, options?: RpcOptions): UnaryCall<GenerateProductMixIdeasRequest, GenerateProductMixIdeasResponse>;
    /**
     * Generates a reach forecast for a given targeting / product mix.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [FieldError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RangeError]()
     *   [ReachPlanError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: GenerateReachForecast(google.ads.googleads.v11.services.GenerateReachForecastRequest) returns (google.ads.googleads.v11.services.GenerateReachForecastResponse);
     */
    generateReachForecast(input: GenerateReachForecastRequest, options?: RpcOptions): UnaryCall<GenerateReachForecastRequest, GenerateReachForecastResponse>;
}
/**
 * Reach Plan Service gives users information about audience size that can
 * be reached through advertisement on YouTube. In particular,
 * GenerateReachForecast provides estimated number of people of specified
 * demographics that can be reached by an ad in a given market by a campaign of
 * certain duration with a defined budget.
 *
 * @generated from protobuf service google.ads.googleads.v11.services.ReachPlanService
 */
export declare class ReachPlanServiceClient implements IReachPlanServiceClient, ServiceInfo {
    private readonly _transport;
    typeName: string;
    methods: import("@protobuf-ts/runtime-rpc").MethodInfo<any, any>[];
    options: {
        [extensionName: string]: import("@protobuf-ts/runtime").JsonValue;
    };
    constructor(_transport: RpcTransport);
    /**
     * Returns the list of plannable locations (for example, countries).
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: ListPlannableLocations(google.ads.googleads.v11.services.ListPlannableLocationsRequest) returns (google.ads.googleads.v11.services.ListPlannableLocationsResponse);
     */
    listPlannableLocations(input: ListPlannableLocationsRequest, options?: RpcOptions): UnaryCall<ListPlannableLocationsRequest, ListPlannableLocationsResponse>;
    /**
     * Returns the list of per-location plannable YouTube ad formats with allowed
     * targeting.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: ListPlannableProducts(google.ads.googleads.v11.services.ListPlannableProductsRequest) returns (google.ads.googleads.v11.services.ListPlannableProductsResponse);
     */
    listPlannableProducts(input: ListPlannableProductsRequest, options?: RpcOptions): UnaryCall<ListPlannableProductsRequest, ListPlannableProductsResponse>;
    /**
     * Generates a product mix ideas given a set of preferences. This method
     * helps the advertiser to obtain a good mix of ad formats and budget
     * allocations based on its preferences.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [ReachPlanError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: GenerateProductMixIdeas(google.ads.googleads.v11.services.GenerateProductMixIdeasRequest) returns (google.ads.googleads.v11.services.GenerateProductMixIdeasResponse);
     */
    generateProductMixIdeas(input: GenerateProductMixIdeasRequest, options?: RpcOptions): UnaryCall<GenerateProductMixIdeasRequest, GenerateProductMixIdeasResponse>;
    /**
     * Generates a reach forecast for a given targeting / product mix.
     *
     * List of thrown errors:
     *   [AuthenticationError]()
     *   [AuthorizationError]()
     *   [FieldError]()
     *   [HeaderError]()
     *   [InternalError]()
     *   [QuotaError]()
     *   [RangeError]()
     *   [ReachPlanError]()
     *   [RequestError]()
     *
     * @generated from protobuf rpc: GenerateReachForecast(google.ads.googleads.v11.services.GenerateReachForecastRequest) returns (google.ads.googleads.v11.services.GenerateReachForecastResponse);
     */
    generateReachForecast(input: GenerateReachForecastRequest, options?: RpcOptions): UnaryCall<GenerateReachForecastRequest, GenerateReachForecastResponse>;
}
