import * as React from "react";
import { IGXE } from "@intelligentgraphics/igd.core";
import { IPropertyEditorProperty } from "../Component";
export interface PropertyViewProps extends IPropertyEditorProperty {
    /**
     * Changes the value for all articles that are associated with this property
     *
     * @param {IGXE.TPropertyValue} newValue
     * @returns {Promise<void>}
     */
    setPropertyValue(newValue: IGXE.TPropertyValue): Promise<void>;
    /**
     *  Applies the current value to all possible transfer targets
     *
     * @returns {Promise<void>}
     */
    applyToAll(): Promise<void>;
}
/**
 * Provides the current data and manipulation methods for a single property editor property
 *
 * @param {string} identifier
 * @returns {(PropertyViewProps | undefined)}
 */
export declare const usePropertyEditorProperty: (identifier: string) => PropertyViewProps | undefined;
declare const Property: React.FunctionComponent<PropertyProps>;
export default Property;
export interface PropertyProps {
    children(props: PropertyViewProps): React.ReactElement<void> | null;
    identifier: string;
}
