/**
 * The `ExpandableModel` extends the `DisclosureModel`
 */
export declare const useExpandableModel: (<TT_Special_Generic>(config?: (Partial<{
    id: string;
    initialVisibility: import("@workday/canvas-kit-react/disclosure").Visibility;
}> & {
    onShow?: ((data: Event | import("react").SyntheticEvent<Element, Event> | undefined, prevState: {
        id: string;
        visibility: "hidden" | "visible";
    }) => void) | undefined;
    onHide?: ((data: Event | import("react").SyntheticEvent<Element, Event> | undefined, prevState: {
        id: string;
        visibility: "hidden" | "visible";
    }) => void) | undefined;
} & {
    shouldShow?: ((data: Event | import("react").SyntheticEvent<Element, Event> | undefined, state: {
        id: string;
        visibility: "hidden" | "visible";
    }) => boolean) | undefined;
    shouldHide?: ((data: Event | import("react").SyntheticEvent<Element, Event> | undefined, state: {
        id: string;
        visibility: "hidden" | "visible";
    }) => boolean) | undefined;
}) | undefined) => {
    state: {
        id: string;
        visibility: "hidden" | "visible";
    };
    events: {
        show(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
        hide(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
    };
}) & import("@workday/canvas-kit-react/common").ModelExtras<{
    id: string;
    initialVisibility: import("@workday/canvas-kit-react/disclosure").Visibility;
}, {}, {
    id: string;
    visibility: "hidden" | "visible";
}, {
    show(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
    hide(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
}, {
    state: {
        id: string;
        visibility: "hidden" | "visible";
    };
    events: {
        show(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
        hide(event?: Event | import("react").SyntheticEvent<Element, Event> | undefined): void;
    };
}>;
//# sourceMappingURL=useExpandableModel.d.ts.map