import React from 'react';
import PropTypes from 'prop-types';
import { SortDirection } from '../../../typings/common';
export declare const ASC = "ASC";
export declare const DESC = "ASC";
export interface ListSorterProps extends Partial<ListSorterDefaultProps> {
    children?: React.ReactNode;
    property?: string;
    displayName?: string;
    ascendingText?: string;
    descendingText?: string;
    sorterTitleText?: string;
}
export interface ListSorterDefaultProps {
    property: string;
    displayName: string;
    ascendingText: string | null;
    descendingText: string | null;
    sorterTitleText: string | null;
}
export declare type AccessibilityHeaderProps = {
    role: string;
    onKeyDown: typeof ListSorter.prototype.handleKeyDown;
    tabIndex: number;
    title: string;
};
export declare class ListSorter extends React.Component<ListSorterProps> {
    static propTypes: {
        property: PropTypes.Requireable<string>;
        append: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        prepend: PropTypes.Requireable<PropTypes.ReactNodeLike>;
    };
    static defaultProps: {
        property: string;
        append: any;
        prepend: any;
    };
    static contextTypes: {
        listStore: PropTypes.Requireable<object>;
    };
    handleChangeSorting: (property: any, direction: any) => void;
    handleKeyDown(e: React.KeyboardEvent<HTMLDivElement>): void;
    getDirection(): SortDirection | null;
    render(): JSX.Element;
}
