import { ClientReadableStream, Metadata } from '@grpc/grpc-js';
import { SearchGoogleAdsRequest, SearchGoogleAdsResponse, SearchGoogleAdsStreamRequest, SearchGoogleAdsStreamResponse, MutateGoogleAdsRequest, MutateGoogleAdsResponse } from './generated/google/ads/googleads/v19/services/google_ads_service.js';
import { Service } from './Service.js';
import { CustomerOptions, ServiceOptions } from './types.js';
export declare class GoogleAds extends Service {
    private customerOptions;
    constructor(options: ServiceOptions, customer?: CustomerOptions);
    setCustomerId(customerId: string): this;
    setLoginCustomerId(loginCustomerId: string): this;
    setLinkedCustomerId(linkedCustomerId: string): this;
    protected get callMetadata(): Metadata;
    private transformRequest;
    search(request: SearchGoogleAdsRequest, metadata?: Metadata): Promise<SearchGoogleAdsResponse>;
    searchStream(request: SearchGoogleAdsStreamRequest, metadata?: Metadata): ClientReadableStream<SearchGoogleAdsStreamResponse>;
    mutate(request: MutateGoogleAdsRequest, metadata?: Metadata): Promise<MutateGoogleAdsResponse>;
}
