import { Control } from 'react-hook-form';
import { IOption, IPartData, IPartThumbnail } from '../../models';
import { TranslateFuncType } from '../../../util/models';
import { ICropDimensions } from '../../../ImageCropDialog/model';
/**
 * The props type of [[`PartDetails`]].
 */
export interface IPartDetails {
    /**
     * This object contains methods for registering components into React Hook Form.
     */
    control: Control<IPartData>;
    /**
     * Options for material.
     */
    materials: ReadonlyArray<IOption>;
    /**
     * Options for customer.
     */
    customers: ReadonlyArray<IOption>;
    /**
     * Options for materialForm.
     */
    materialForms: ReadonlyArray<IOption>;
    /**
     * The props type of [[`PartThumbnail`]].
     */
    thumbnailProps: IPartThumbnail;
    /**
     *  The dimensions use for the crop and part thumbnail.
     */
    cropDimensions?: ICropDimensions;
    /**
     *  translate function
     */
    t: (key: string) => string;
}
export declare const PartThumbnail: (props: IPartThumbnail & {
    t: TranslateFuncType;
}) => import("react/jsx-runtime").JSX.Element;
/**
 * @param {IPartDetails} props - provides the properties fo React component
 * @return {ReactNode} - provides the react component to be ingested
 **/
export declare const PartDetails: ({ control, materials, customers, materialForms, thumbnailProps, cropDimensions, t, }: IPartDetails) => import("react/jsx-runtime").JSX.Element;
