import { ComponentWithAs, ComponentSlotClasses } from '@fluentui/react-bindings';
import { ICSSInJSStyle } from '@fluentui/styles';
import * as React from 'react';
import { UIComponentProps, ContentComponentProps } from '../../utils';
import { FluentComponentStaticProps } from '../../types';
export interface ItemLayoutSlotClassNames {
    header: string;
    headerMedia: string;
    main: string;
    content: string;
    contentMedia: string;
    media: string;
    endMedia: string;
}
export interface ItemLayoutProps extends UIComponentProps, ContentComponentProps<any> {
    contentMedia?: any;
    /** Toggle debug mode */
    debug?: boolean;
    header?: any;
    endMedia?: any;
    headerMedia?: any;
    media?: any;
    renderContentArea?: (props: ItemLayoutProps, classes: ComponentSlotClasses) => React.ReactNode;
    renderHeaderArea?: (props: ItemLayoutProps, classes: ComponentSlotClasses) => React.ReactNode;
    renderMainArea?: (props: ItemLayoutProps, classes: ComponentSlotClasses) => React.ReactNode;
    /** Styled applied to the root element of the rendered component. */
    rootCSS?: ICSSInJSStyle;
    /** Styled applied to the media element of the rendered component. */
    mediaCSS?: React.CSSProperties;
    /** Styled applied to the header element of the rendered component. */
    headerCSS?: ICSSInJSStyle;
    /** Styled applied to the header media element of the rendered component. */
    headerMediaCSS?: React.CSSProperties;
    /** Styled applied to the content element of the rendered component. */
    contentCSS?: ICSSInJSStyle;
    /** Styled applied to the content element of the rendered component. */
    contentMediaCSS?: React.CSSProperties;
    /** Styled applied to the end media element of the rendered component. */
    endMediaCSS?: React.CSSProperties;
}
export declare const itemLayoutClassName = "ui-itemlayout";
export declare const itemLayoutSlotClassNames: ItemLayoutSlotClassNames;
export declare type ItemLayoutStylesProps = never;
/**
 * (DEPRECATED) The Item Layout handles layout styles for menu items, list items and other similar item templates.
 */
export declare const ItemLayout: ComponentWithAs<'div', ItemLayoutProps> & FluentComponentStaticProps<ItemLayoutProps>;
