import type { GestureReponderEvent, SizeTokens, TamaguiElement } from '@tamagui/core' import type { Scope } from '@tamagui/create-context' import type { SizableStackProps } from '@tamagui/stacks' export type ScopedProps
= P & { __scopeSlider?: string }
export type Direction = 'ltr' | 'rtl'
type SliderEventProps = {
onSlideStart?: (
event: GestureReponderEvent,
value: number,
target: 'thumb' | 'track'
) => void
onSlideMove?: (event: GestureReponderEvent, value: number) => void
onSlideEnd?: (event: GestureReponderEvent, value: number) => void
}
type SliderImplPrivateProps = {
onSlideStart(event: GestureReponderEvent, target: 'thumb' | 'track'): void
onSlideMove(event: GestureReponderEvent): void
onSlideEnd(event: GestureReponderEvent): void
onHomeKeyDown(event: React.KeyboardEvent): void
onEndKeyDown(event: React.KeyboardEvent): void
onStepKeyDown(event: React.KeyboardEvent): void
}
export type SliderTrackProps = SizableStackProps
export interface SliderImplProps extends SliderTrackProps, SliderImplPrivateProps {
dir?: Direction
orientation: 'horizontal' | 'vertical'
}
type SliderOrientationPrivateProps = {
min: number
max: number
onSlideStart?(
value: number,
target: 'thumb' | 'track',
event: GestureReponderEvent
): void
onSlideMove?(value: number, event: GestureReponderEvent): void
onSlideEnd?(event: GestureReponderEvent, value: number): void
onHomeKeyDown(event: React.KeyboardEvent): void
onEndKeyDown(event: React.KeyboardEvent): void
onStepKeyDown(step: { event: React.KeyboardEvent; direction: number }): void
}
interface SliderOrientationProps
extends
Omit