/** * Copyright (c) 2018 Dell Inc., or its subsidiaries. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 */ import * as React from "react"; /** * Accordian Props * @param {style} css style * @param {className} css property * @param {accordionMultiPanel} if yes multipanel enebled else not * @param {dataqa} quality engineering testing field * @param {titleClassName} css propert for title of accordion */ declare type AccordionProps = { style?: any; className?: string; content: accordionContent[]; accordionMultiPanel?: boolean; dataqa?: string; titleClassName?: string; }; declare type accordionContent = { title: React.ReactNode; itemComponent: React.ReactNode; isOpen?: boolean; }; declare type AccordionState = { panelItems: any; }; export declare class Accordion extends React.Component { state: AccordionState; componentDidMount(): void; componentDidUpdate(prevProps: AccordionProps): void; handleButtonClick: (clickedItemIndex: number, accordionMultiPanel?: boolean | undefined) => void; private accordionPanel; private accordionContent; getItemContent: (index: any, title: any, isOpen: boolean | undefined) => JSX.Element; getPanelContent: (index: number, contentItem: accordionContent, isOpen?: boolean | undefined) => { content: JSX.Element; isOpen: boolean | undefined; title: React.ReactNode; component: React.ReactNode; }; getAccordionContent: () => void; render(): JSX.Element; } export {};