include-clause-tool.d.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import {ModelData} from '../types.js';
  2. import {Service} from '@e22m4u/js-service';
  3. import {FilterClause} from './filter-clause.js';
  4. import {IncludeClause} from './filter-clause.js';
  5. import {NormalizedIncludeClause} from './filter-clause.js';
  6. /**
  7. * Include clause tool.
  8. */
  9. export declare class IncludeClauseTool extends Service {
  10. /**
  11. * Include to.
  12. *
  13. * @param entities
  14. * @param modelName
  15. * @param clause
  16. */
  17. includeTo(
  18. entities: ModelData[],
  19. modelName: string,
  20. clause: IncludeClause | undefined,
  21. ): Promise<void>;
  22. /**
  23. * Validate include clause.
  24. *
  25. * @param clause
  26. */
  27. static validateIncludeClause(clause: IncludeClause | undefined): void;
  28. /**
  29. * Validate scope clause.
  30. *
  31. * @param clause
  32. */
  33. static validateScopeClause(clause: FilterClause | undefined): void;
  34. /**
  35. * Normalize include clause.
  36. *
  37. * @param clause
  38. */
  39. static normalizeIncludeClause(
  40. clause: IncludeClause | undefined,
  41. ): NormalizedIncludeClause[];
  42. /**
  43. * Normalize scope clause.
  44. *
  45. * @param clause
  46. */
  47. static normalizeScopeClause(
  48. clause: FilterClause | undefined,
  49. ): FilterClause | undefined;
  50. }