RangeContext.d.ts 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import type { InjectionKey, PropType, Ref } from 'vue';
  2. import type { NullableDateType, RangeValue } from './interface';
  3. export declare type RangeContextProps = {
  4. /**
  5. * Set displayed range value style.
  6. * Panel only has one value, this is only style effect.
  7. */
  8. rangedValue?: Ref<[NullableDateType<any>, NullableDateType<any>] | null>;
  9. hoverRangedValue?: Ref<RangeValue<any>>;
  10. inRange?: Ref<boolean>;
  11. panelPosition?: Ref<'left' | 'right' | false>;
  12. };
  13. declare type RangeContextProviderValue = {
  14. /**
  15. * Set displayed range value style.
  16. * Panel only has one value, this is only style effect.
  17. */
  18. rangedValue?: [NullableDateType<any>, NullableDateType<any>] | null;
  19. hoverRangedValue?: RangeValue<any>;
  20. inRange?: boolean;
  21. panelPosition?: 'left' | 'right' | false;
  22. };
  23. declare const RangeContextKey: InjectionKey<RangeContextProps>;
  24. export declare const useProvideRange: (props: RangeContextProps) => void;
  25. export declare const useInjectRange: () => RangeContextProps;
  26. export declare const RangeContextProvider: import("vue").DefineComponent<{
  27. value: {
  28. type: PropType<RangeContextProviderValue>;
  29. default: () => RangeContextProviderValue;
  30. };
  31. }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
  32. [key: string]: any;
  33. }>[], unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
  34. value: {
  35. type: PropType<RangeContextProviderValue>;
  36. default: () => RangeContextProviderValue;
  37. };
  38. }>>, {
  39. value: RangeContextProviderValue;
  40. }>;
  41. export default RangeContextKey;