19 lines
542 B
TypeScript
19 lines
542 B
TypeScript
import type { Match } from '../domain/match'
|
|
import type { MatchStrength } from '../domain/enums'
|
|
|
|
export interface MatchFilters {
|
|
needId?: string
|
|
propertyId?: string
|
|
minScore?: number
|
|
matchStrength?: MatchStrength
|
|
organizationId?: string
|
|
}
|
|
|
|
export interface IMatchProvider {
|
|
getAll(filters?: MatchFilters): Promise<Match[]>
|
|
getById(id: string): Promise<Match | null>
|
|
getByNeed(needId: string): Promise<Match[]>
|
|
getByProperty(propertyId: string): Promise<Match[]>
|
|
approve(id: string, reviewedBy: string): Promise<Match>
|
|
}
|