import { FetchStateAndError, ID } from '../../../commonStateTypes/common'; import { SelectorView } from '../../../commonStateTypes/viewAndReport/viewAndReport'; import { Attachment } from '../../../entity/transaction/stateTypes/attachment'; import { User } from '../../../entity/user/userState'; import { Vendor } from '../../../entity/vendor/vendorState'; import { RootState } from '../../../rootStateTypes'; import ZeniUrl from '../../../zeniUrl'; import { GlobalMerchantAutoCompleteView } from '../../globalMerchantView/globalMerchantAutoCompleteView/globalMerchantAutoCompleteViewSelector'; import { ReviewStatus, VendorReviewRowCurrentSelection } from '../common/state/commonTypes'; import { RecommendedNonExistingGlobalMerchant } from '../common/state/recommendedNonExistingGlobalMerchant'; import { VendorFirstReviewViewUIState } from './vendorFirstReviewViewState'; export interface VendorFirstReviewViewSelectorView extends SelectorView { globalMerchantAutoCompleteView: GlobalMerchantAutoCompleteView; uiState: VendorFirstReviewViewUIState; vendorReviewView: VendorFirstReviewSelectorView[]; recentlySavedErroredVendorView?: RecentlySavedErroredVendorView; } export interface VendorFirstReviewSelectorView { attachmentFetchStatus: FetchStateAndError; currentSelection: VendorReviewRowCurrentSelection; isWebsiteUrlSaved: boolean; mergeVendorName: string | undefined; recommendations: RecommendedNonExistingGlobalMerchant[]; saveStatus: FetchStateAndError; selectedVendor: { name: string; id?: ID; logo?: ZeniUrl; }; status: ReviewStatus; transactionAttachments: Attachment[]; vendorId: ID; currentVendor?: Vendor; lastUpdatedVendorNameByUser?: User; vendorQboId?: ID; vendorRenamedText?: string; } interface RecentlySavedErroredVendorView { vendorId: ID; vendorName: string; newRecommendedVendor?: RecommendedNonExistingGlobalMerchant; oldRecommendedVendor?: RecommendedNonExistingGlobalMerchant; } export interface FirstReviewVendorDetailSelectorView { saveStatus: FetchStateAndError; id?: ID; name?: string; qboId?: ID; websiteUrl?: ZeniUrl; } export declare const getVendorFirstReviewView: (state: RootState) => VendorFirstReviewViewSelectorView; export interface VendorFirstReviewSelectorAttachmentView { attachmentFetchStatus: FetchStateAndError; transactionAttachments: Attachment[]; } export declare const getVendorFirstReviewAttachmentView: (state: RootState, vendorId: ID) => VendorFirstReviewSelectorAttachmentView | undefined; export declare const getVendorDetailSelectorView: (state: RootState) => FirstReviewVendorDetailSelectorView; export {};