-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathCallDataSource.ts
More file actions
43 lines (42 loc) · 1.75 KB
/
Copy pathCallDataSource.ts
File metadata and controls
43 lines (42 loc) · 1.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import { Call } from '../models/Call';
import { CallHasInstrument } from '../models/CallHasInstrument';
import { Workflow } from '../models/Workflow';
import { CreateCallInput } from '../resolvers/mutations/CreateCallMutation';
import {
UpdateCallInput,
AssignInstrumentsToCallInput,
RemoveAssignedInstrumentFromCallInput,
UpdateFapToCallInstrumentInput,
CallOrderInput,
} from '../resolvers/mutations/UpdateCallMutation';
import { PaginationSortDirection } from '../utils/pagination';
import { CallsFilter } from './../resolvers/queries/CallsQuery';
export interface CallDataSource {
getCall(id: number): Promise<Call | null>;
getCalls(
filter?: CallsFilter,
sortField?: string,
sortDirection?: PaginationSortDirection
): Promise<Call[]>;
getCallHasInstrumentsByInstrumentIds(
instrumentIds: number[]
): Promise<CallHasInstrument[]>;
create(args: CreateCallInput): Promise<Call>;
update(args: UpdateCallInput): Promise<Call>;
orderCalls(args: CallOrderInput): Promise<boolean>;
delete(id: number): Promise<Call>;
assignInstrumentsToCall(args: AssignInstrumentsToCallInput): Promise<Call>;
updateFapToCallInstrument(
args: UpdateFapToCallInstrumentInput
): Promise<Call>;
removeAssignedInstrumentFromCall(
args: RemoveAssignedInstrumentFromCallInput
): Promise<Call>;
getCallsByInstrumentScientist(scientistId: number): Promise<Call[]>;
isCallEnded(callId: number, checkIfInternalEnded: boolean): Promise<boolean>;
isCallEnded(callId: number): Promise<boolean>;
getCallByAnswerIdProposal(answerId: number): Promise<Call>;
getProposalWorkflowByCall(callId: number): Promise<Workflow | null>;
getExperimentWorkflowByCall(callId: number): Promise<Workflow | null>;
getCallsOfFaps(fapIds: number[]): Promise<Call[]>;
}