import { CSSProperties, PropsWithChildren, ReactNode } from "react"; //#region src/lib/types.d.ts type CSSPropertiesWithVars = CSSProperties & { [key: `--${string}`]: string | number | undefined; }; interface MarkerProps extends PropsWithChildren {} type TruncateMode = 'truncate' | 'fruncate'; interface OverflowTextProps extends PropsWithChildren { mode?: TruncateMode; style?: Omit; className?: string; marker?: ReactNode | ((props: MarkerProps) => ReactNode); variant?: 'default' | 'fade'; } type MiddleTruncateProps = Omit & AllowableContentGroups & { minimumLength?: number; priority?: 'start' | 'end' | 'equal'; split?: 'center' | 'extension' | 'leaf-path' | number | SplitOffset | CustomSplitFn; }; type MiddleTruncateFilteredProps = Pick & { splitIndex?: number; splitOffset?: number; }; type CustomSplitFn = (contents: string, props?: MiddleTruncateFilteredProps) => [string, string]; type SplitOffsetType = 'last' | 'first'; type SplitOffset = [SplitOffsetType, number]; type AllowableContentGroups = { children?: never; contents: [ReactNode, ReactNode]; } | { contents?: never; children: string; }; //#endregion export { CSSPropertiesWithVars, CustomSplitFn, MarkerProps, MiddleTruncateFilteredProps, MiddleTruncateProps, OverflowTextProps, SplitOffset, SplitOffsetType, TruncateMode }; //# sourceMappingURL=types.d.ts.map