import { __rest } from '../../../../_virtual/_tslib.js';
import React__default from 'react';
import { HeaderWrapper, HeaderInnerWrapper, IconTitleWrapper } from './styles.js';
import { IconButton } from '../../../IconButton/index.js';
import Close from '../../../../icons/Close.js';
import Placeholder from '../../../../icons/Placeholder.js';
import { getId } from '../../../../utils/index.js';

function BottomSheetHeader(_a) {
    var { headerTitle, icon = React__default.createElement(Placeholder, null), hasPullTab = false, pinnedHeader = false, headerContentModifiers = 'empty', headerControlsModifiers = 'close', onClose } = _a, props = __rest(_a, ["headerTitle", "icon", "hasPullTab", "pinnedHeader", "headerContentModifiers", "headerControlsModifiers", "onClose"]);
    const appendTestId = getId(`${props['data-testid']}-bottom-sheet-header`);
    const appendTrackId = getId(`${props['data-trackid']}-bottom-sheet-header`);
    const appendId = getId(`${props['id']}`);
    return (React__default.createElement(HeaderWrapper, { hasPullTab: hasPullTab, pinnedHeader: pinnedHeader, "data-testid": appendTestId('wrapper'), id: appendId('wrapper') }, headerContentModifiers === 'empty' &&
        headerControlsModifiers === 'default' ? null : (React__default.createElement(HeaderInnerWrapper, { headerContentModifiers: headerContentModifiers },
        React__default.createElement(IconTitleWrapper, { headerControlsModifiers: headerControlsModifiers },
            headerContentModifiers === 'withIcon' && icon,
            headerContentModifiers !== 'empty' && (React__default.createElement("h3", { "data-testid": appendTestId('title') }, headerTitle))),
        headerControlsModifiers === 'close' && (React__default.createElement(IconButton, { size: "x-small", variant: "ghost-tertiary", icon: React__default.createElement(Close, null), onClick: onClose, "data-testid": appendTestId('close-button'), "data-trackid": appendTrackId('close-button') }))))));
}

export { BottomSheetHeader };
