type.d.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. /// <reference types="miniprogram-api-typings" />
  2. import { ButtonProps } from '../button/index';
  3. export interface TdGuideProps {
  4. backButtonProps?: {
  5. type: ObjectConstructor;
  6. value?: ButtonProps;
  7. };
  8. counter?: {
  9. type: StringConstructor;
  10. value?: string | ((params: {
  11. total: number;
  12. current: number;
  13. }) => string);
  14. };
  15. current?: {
  16. type: NumberConstructor;
  17. value?: number;
  18. };
  19. defaultCurrent?: {
  20. type: NumberConstructor;
  21. value?: number;
  22. };
  23. finishButtonProps?: {
  24. type: ObjectConstructor;
  25. value?: ButtonProps;
  26. };
  27. hideBack?: {
  28. type: BooleanConstructor;
  29. value?: boolean;
  30. };
  31. hideCounter?: {
  32. type: BooleanConstructor;
  33. value?: boolean;
  34. };
  35. hideSkip?: {
  36. type: BooleanConstructor;
  37. value?: boolean;
  38. };
  39. highlightPadding?: {
  40. type: NumberConstructor;
  41. value?: number;
  42. };
  43. mode?: {
  44. type: StringConstructor;
  45. value?: 'popover' | 'dialog';
  46. };
  47. nextButtonProps?: {
  48. type: ObjectConstructor;
  49. value?: ButtonProps;
  50. };
  51. showOverlay?: {
  52. type: BooleanConstructor;
  53. value?: boolean;
  54. };
  55. skipButtonProps?: {
  56. type: ObjectConstructor;
  57. value?: ButtonProps;
  58. };
  59. steps?: {
  60. type: ArrayConstructor;
  61. value?: Array<GuideStep>;
  62. };
  63. usingCustomNavbar?: {
  64. type: BooleanConstructor;
  65. value?: boolean;
  66. };
  67. zIndex?: {
  68. type: NumberConstructor;
  69. value?: number;
  70. };
  71. }
  72. export interface GuideStep {
  73. backButtonProps?: ButtonProps;
  74. body?: string;
  75. element: StepElement;
  76. finishButtonProps?: ButtonProps;
  77. highlightPadding?: number;
  78. mode?: 'popover' | 'dialog';
  79. nextButtonProps?: ButtonProps;
  80. offset?: Array<string | number>;
  81. placement?: StepPopoverPlacement;
  82. showOverlay?: boolean;
  83. skipButtonProps?: ButtonProps;
  84. title?: string;
  85. }
  86. export declare type StepElement = () => Promise<WechatMiniprogram.BoundingClientRectCallbackResult>;
  87. export declare type StepPopoverPlacement = 'top' | 'left' | 'right' | 'bottom' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom' | 'center';