index.d.ts 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. export as namespace Sizzle;
  2. declare const Sizzle: SizzleStatic;
  3. export = Sizzle;
  4. interface SizzleStatic {
  5. selectors: Sizzle.Selectors;
  6. <TArrayLike extends ArrayLike<Element>>(
  7. selector: string,
  8. context: Element | Document | DocumentFragment,
  9. results: TArrayLike,
  10. ): TArrayLike;
  11. (selector: string, context?: Element | Document | DocumentFragment): Element[];
  12. // eslint-disable-next-line @typescript-eslint/ban-types
  13. compile(selector: string): Function;
  14. matchesSelector(element: Element, selector: string): boolean;
  15. matches(selector: string, elements: Element[]): Element[];
  16. }
  17. declare namespace Sizzle {
  18. interface Selectors {
  19. cacheLength: number;
  20. match: Selectors.Matches;
  21. find: Selectors.FindFunctions;
  22. preFilter: Selectors.PreFilterFunctions;
  23. filter: Selectors.FilterFunctions;
  24. attrHandle: Selectors.AttrHandleFunctions;
  25. pseudos: Selectors.PseudoFunctions;
  26. setFilters: Selectors.SetFilterFunctions;
  27. createPseudo(fn: Selectors.CreatePseudoFunction): Selectors.PseudoFunction;
  28. }
  29. namespace Selectors {
  30. interface Matches {
  31. [name: string]: RegExp;
  32. }
  33. interface FindFunction {
  34. // eslint-disable-next-line @typescript-eslint/no-invalid-void-type
  35. (match: RegExpMatchArray, context: Element | Document, isXML: boolean): Element[] | void;
  36. }
  37. interface FindFunctions {
  38. [name: string]: FindFunction;
  39. }
  40. interface PreFilterFunction {
  41. (match: RegExpMatchArray): string[];
  42. }
  43. interface PreFilterFunctions {
  44. [name: string]: PreFilterFunction;
  45. }
  46. interface FilterFunction {
  47. (element: string, ...matches: string[]): boolean;
  48. }
  49. interface FilterFunctions {
  50. [name: string]: FilterFunction;
  51. }
  52. interface AttrHandleFunction {
  53. (elem: any, casePreservedName: string, isXML: boolean): string;
  54. }
  55. interface AttrHandleFunctions {
  56. [name: string]: AttrHandleFunction;
  57. }
  58. interface PseudoFunction {
  59. (elem: Element): boolean;
  60. }
  61. interface PseudoFunctions {
  62. [name: string]: PseudoFunction;
  63. }
  64. interface SetFilterFunction {
  65. (elements: Element[], argument: number, not: boolean): Element[];
  66. }
  67. interface SetFilterFunctions {
  68. [name: string]: SetFilterFunction;
  69. }
  70. interface CreatePseudoFunction {
  71. (...args: any[]): PseudoFunction;
  72. }
  73. }
  74. }