import { protobuf } from "./protos";
/**
 * @param micros Money value in micros format
 * @description Converts a micro amount to a normalised value
 * @example
 * const cost = fromMicros(campaign.metrics.costMicros)
 */
export declare function fromMicros(micros: number): number;
/**
 * @param value Money value in decimal format
 * @description Converts a number to micro format
 * @example
 * const costMicros = toMicros(12.5) // 12,500,000
 */
export declare function toMicros(value: number): number;
/**
 * @param query String gaql query
 * @description Normalises a query by replacing multiple whitespace with single whitespace
 * @example
 * const gaqlQuery =
 *  `SELECT campaign.name
 *  FROM campaign
 *  LIMIT 10`
 * const normalisedQuery = normaliseQuery(gaqlQuery) // "SELECT campaign.name FROM campaign LIMIT 10"
 */
export declare function normaliseQuery(query: string): string;
/**
 * @param str
 * @description Capitalises the first letter of a string
 * @example
 * const capitalisedString = capitaliseFirstLetter("adGroupCriterionSimulation") // "AdGroupCriterionSimulation"
 */
export declare function capitaliseFirstLetter<T extends string>(str: string): Capitalize<T>;
/**
 * @param str
 * @description Converts a string to a camel case string. Works on space case, snake case and title case strings.
 * @example
 * const camelCaseString = toCamelCase("ad_group_criterion_simulation") // "adGroupCriterionSimulation"
 */
export declare function toCamelCase(str: string): string;
/**
 * @param str
 * @description Converts a string to a snake case string. Works on space case, camel case and title case strings.
 * @example
 * const snakeCaseString = toSnakeCase("adGroupCriterionSimulation") // "ad_group_criterion_simulation"
 */
export declare function toSnakeCase(str: string): string;
export declare function recursiveFieldMaskSearch(data: Record<string, any>): string[];
export declare function getFieldMask(data: Record<string, any>): protobuf.FieldMask;
export declare function createNextChunkArrivedPromise(): {
    newPromise: Promise<unknown>;
    resolve: () => void;
    reject: (error: Error) => void;
};
