/** @packageDocumentation
 * @module Utilities
 */
import * as React from "react";
import { AbstractWidgetProps, BackstageItem, ConditionalStringValue, StringGetter } from "@itwin/appui-abstract";
import { IconSpec } from "@itwin/core-react";
/** A set of helper methods for various props
 * @public
 */
export declare class PropsHelper {
    /** Get spec for returning a string. Could be a simple string of a 'StringGetter' method used to return the string. */
    static getStringSpec(explicitValue: string | StringGetter | ConditionalStringValue | undefined, stringKey?: string): string | StringGetter | ConditionalStringValue;
    /** Get the display string. */
    static getStringFromSpec(spec: string | StringGetter | ConditionalStringValue): string;
    /** Get JSX element that defines an icon. If iconSpec is a string, then a web-font icon class is used otherwise a ReactNode holding an SVG icon is assumed.  */
    static getIcon(iconSpec: string | ConditionalStringValue | React.ReactNode): JSX.Element | undefined;
    /** returns true if the two objects are the same using a shallow compare of each property */
    static isShallowEqual(newObj: any, prevObj: any): boolean;
    static getAbstractPropsForReactIcon(iconSpec: IconSpec, internalData?: Map<string, any>): Partial<AbstractWidgetProps> | Partial<BackstageItem>;
}
//# sourceMappingURL=PropsHelper.d.ts.map