import type { ExtractPropTypes } from 'vue'
import type { ITabsVm } from './tabs.type'
import type { ISharedRenderlessFunctionParams, ISharedRenderlessParamUtils } from './shared.type'
import type { tabBarProps } from '@/tabs/src/tab-nav'
import type { computedBarStyle } from '../src/tab-bar'
export type ITabBarPcProps = ExtractPropTypes<typeof tabBarProps>
export interface ITabBarPcState {
rootTabs: ITabsVm
barStyle: object
separator: boolean | null
}
export interface ITabBarPcApi {
state: ITabBarPcState
computedBarStyle: ReturnType<typeof computedBarStyle>
}
export type ITabBarPcRenderlessParamUtils = ISharedRenderlessParamUtils<never>
export type ITabBarPcRenderlessParams = ISharedRenderlessFunctionParams<never> & {
state: ITabBarPcState
props: ITabBarPcProps
api: ITabBarPcApi
rootTabs: ITabsVm
}
export interface ITabBarStyle {
transform: string
msTransform: string
webkitTransform: string
}