import { Customer } from "./customer";
import { Hooks } from "./hooks";
import { errors, GoogleAdsServiceClient, services } from "./protos";
import { PageToken, ReportOptions, MutateOperation } from "./types";
export declare const MOCK_CLIENT_ID = "MOCK CLIENT ID";
export declare const MOCK_CLIENT_SECRET = "MOCK CLIENT SECRET";
export declare const MOCK_DEVELOPER_TOKEN = "MOCK DEVELOPER TOKEN";
export declare const MOCK_REFRESH_TOKEN = "MOCK REFRESH TOKEN";
export declare const MOCK_CID = "MOCK CID";
export declare const MOCK_LOGIN_CID = "MOCK LOGIN CID";
export declare const mockGaqlQuery = "SELECT campaign.resource_name FROM campaign LIMIT 1";
export declare const mockReportOptions: ReportOptions;
export declare const mockMutations: MutateOperation<any>[];
export declare const mockQueryReturnValue: services.IGoogleAdsRow[];
export declare const mockSummaryRow: services.IGoogleAdsRow;
export declare const mockTotalResultsCount = 23;
export declare const mockMutationReturnValue: services.MutateGoogleAdsResponse;
export declare const mockError: {
    errors: {
        errorCode: {
            queryError: errors.QueryErrorEnum.QueryError;
        };
        message: string;
    }[];
};
export declare const mockErrorMessage = "mock error message";
export declare const mockParseValue: services.IGoogleAdsRow;
export declare const mockParsedValues: services.IGoogleAdsRow[];
export declare function mockPaginatedSearch(customer: Customer, includeTotalResultsCount?: boolean): jest.SpyInstance;
export declare function mockSearchOnce({ customer, response, nextPageToken, includeTotalResultsCount, }: {
    customer: Customer;
    response: any[];
    nextPageToken: PageToken;
    includeTotalResultsCount?: boolean;
}): jest.SpyInstance;
export declare function mockBuildSearchStreamRequestAndService(customer: Customer): {
    spyBuild: jest.SpyInstance;
    mockStreamData: (data: services.IGoogleAdsRow[]) => void;
    mockStreamSummaryRow: () => void;
    mockStreamError: (error: Error) => void;
    mockStreamEnd: () => void;
};
export declare function mockBuildSearchRequestAndService({ customer, shouldThrow, includeSummaryRow, includeTotalResultsCount, }: {
    customer: Customer;
    shouldThrow?: boolean;
    includeSummaryRow?: boolean;
    includeTotalResultsCount?: boolean;
}): {
    mockService: GoogleAdsServiceClient;
    spyBuild: jest.SpyInstance;
};
export declare function mockBuildMutateRequestAndService({ customer, shouldThrow, request, response, }: {
    customer: Customer;
    shouldThrow?: boolean;
    request?: services.MutateGoogleAdsRequest;
    response?: services.MutateGoogleAdsResponse;
}): {
    mockService: GoogleAdsServiceClient;
    spyBuild: jest.SpyInstance;
};
export declare function mockGetGoogleAdsError(customer: Customer): jest.SpyInstance;
export declare function mockQuery(customer: Customer): jest.SpyInstance;
export declare function mockParse(mockParsedValues: services.IGoogleAdsRow[]): jest.SpyInstance;
export declare function noopParser(rows: services.IGoogleAdsRow[]): services.IGoogleAdsRow[];
export declare function mockMethod(): {
    method(): void;
};
export declare function failTestIfExecuted(): void;
export declare function newCustomer(hooks?: Hooks, disableParsing?: boolean): Customer;
