import { RequestContext, ID, ListQueryBuilder, EventBus, Type, Customer, CustomerService, DeepPartial, ExtendedListQueryOptions, TransactionalConnection } from '@vendure/core'; import { FindOneOptions } from 'typeorm'; import { ReviewStateTransitionEvent } from '../events/review-state-transition.event'; import { ReviewState } from './review-state'; import { ListQueryOptions } from '@vendure/core/dist/common/types/common-types'; import { ReviewBaseEntity } from '../entities/review-base.entity'; import { ReviewStateMachine } from './review-state-machine'; export declare class ReviewService> { protected connection: TransactionalConnection; protected listQueryBuilder: ListQueryBuilder; protected customerService: CustomerService; protected eventBus: EventBus; private entity; private event; private entityRelations; reviewStateMachine: ReviewStateMachine; constructor(connection: TransactionalConnection, listQueryBuilder: ListQueryBuilder, customerService: CustomerService, eventBus: EventBus, entity: Type, event: Type, entityRelations: string[]); create(input: DeepPartial): Promise; findAll(options?: ListQueryOptions, extendedOptions?: ExtendedListQueryOptions): Promise<{ items: Et[]; totalItems: number; }>; findById(ctx: RequestContext, id: ID, options?: FindOneOptions): Promise; update(ctx: RequestContext, input: DeepPartial & { id: ID; }): Promise; transitionToState(ctx: RequestContext, review: Et, state: ReviewState): Promise; getNextReviewStates(review: Et): readonly ReviewState[]; getCustomer(ctx: RequestContext): Promise; getCustomerOrThrow(ctx: RequestContext): Promise; }