import { KeyValuePair } from "../interface/key-value-pair";
import { CoDomainValue } from "@colijnit/mainapi/build/model/co-domain-value.bo";
import { SharedComponentsDictionaryService } from '../translation/shared-components-dictionary.service';
export declare class EnumUtils {
    static StringEnumToArray(clazz: any): string[];
    /**
     * Returns a single string representation of given string enum class
     * @param clazz
     * @returns {string} eg "input-lov-slideout, financial-customer-group-select" for a given clazz of InputLovSlideoutComponentSelectors
     */
    static StringEnumToSingleString(clazz: any): string;
    static GetNumberEnumValues(numberEnumClass: any): any[];
    static GetStringEnumValues(stringEnumClass: any): any[];
    static GetObjValues(numberEnumClass: any): (number | string)[];
    /**
     * Returns the enum in object format to make handling easier
     * Works for Enums with the following format:
     * foo: 1
     * bar: 2
     * etc...
     * @param enumClass
     * @returns {Object}
     */
    static createObjectFromEnum(enumClass: any): KeyValuePair[];
    static getStringEnumKeysArray(enumType: object): string[];
    static buildPromiseDomainValueListFromEnumClass(enumClass: any, dictionary: SharedComponentsDictionaryService, keysAsDescription?: boolean): Promise<CoDomainValue[]>;
    static buildDomainValueListFromEnumClass(enumClass: any, dictionary: SharedComponentsDictionaryService, keysAsDescription?: boolean): CoDomainValue[];
    static getKeyByValue(enumType: object, enumValue: string): string;
    private static isNumeral;
}
export declare function StringEnumToSingleString(clazz: any): string;
