interface ResourceCrudInterface { create(resource: U): Promise; get(id: number, parameters: object): Promise; getAll(parameters: object): Promise; update(id: number, resource: T): Promise; delete(id: number): Promise; }