import type * as React from 'react'; import type { ViewStyle, StyleProp } from 'react-native'; import type { IViewProps } from '@fluentui-react-native/adapters'; import type { IWithPressableOptions, IPressableState } from '@fluentui-react-native/interactive-hooks'; type ObjectBase = {}; export type IPressableProps = IWithPressableOptions & { children?: IRenderChild; renderStyle?: IRenderStyle; }; /** * Used by IRenderChild, it simply describes a function that takes * some generic state type T and returns a ReactNode */ export type IChildAsFunction = (state: T) => React.ReactNode; /** * An IRenderChild describes children as a function that take the current * state of the parent component. It is up to the parent to invoke the function * and make proper use of the more typical ReactNode object that is returned * This is an especially helpful construct when children of a Touchable require * knowledge of the interaction state of their parent to properly render themselves * (e.g. foreground color of a text child) */ export type IRenderChild = IChildAsFunction | React.ReactNode; /** * An IRenderStyle describes style as a function that takes the current * state of the parent component. It is up to the parent to invoke the function * and make proper use of the more typical StyleProp object that is returned * This is convenient for when styles need to be calculated depending on interaction states. */ export type IRenderStyle = (state: T) => StyleProp; export type IPressableType = { props: IPressableProps; slotProps: { root: TBase; }; }; export {}; //# sourceMappingURL=Pressable.props.d.ts.map