has-many-resolver.d.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import {ModelData} from '../types.js';
  2. import {Service} from '@e22m4u/js-service';
  3. import {FilterClause} from '../filter/index.js';
  4. /**
  5. * Has many resolver.
  6. */
  7. export declare class HasManyResolver extends Service {
  8. /**
  9. * Include to.
  10. *
  11. * @param entities
  12. * @param sourceName
  13. * @param targetName
  14. * @param relationName
  15. * @param foreignKey
  16. * @param scope
  17. */
  18. includeTo(
  19. entities: ModelData[],
  20. sourceName: string,
  21. targetName: string,
  22. relationName: string,
  23. foreignKey: string,
  24. scope?: FilterClause,
  25. ): Promise<void>;
  26. /**
  27. * Include polymorphic to.
  28. *
  29. * @param entities
  30. * @param sourceName
  31. * @param targetName
  32. * @param relationName
  33. * @param foreignKey
  34. * @param discriminator
  35. * @param scope
  36. */
  37. includePolymorphicTo(
  38. entities: ModelData[],
  39. sourceName: string,
  40. targetName: string,
  41. relationName: string,
  42. foreignKey: string,
  43. discriminator: string,
  44. scope?: FilterClause,
  45. ): Promise<void>;
  46. /**
  47. * Include polymorphic by relation name.
  48. *
  49. * @param entities
  50. * @param sourceName
  51. * @param targetName
  52. * @param relationName
  53. * @param targetRelationName
  54. * @param scope
  55. */
  56. includePolymorphicByRelationName(
  57. entities: ModelData[],
  58. sourceName: string,
  59. targetName: string,
  60. relationName: string,
  61. targetRelationName: string,
  62. scope?: FilterClause,
  63. ): Promise<void>;
  64. }