import type { Quotation, QuotationItemConfiguration, QuotationProposal } from '@unchainedshop/core-quotations'; import { type IBaseAdapter } from '@unchainedshop/utils'; export interface QuotationContext { quotation?: Quotation; } export interface QuotationAdapterActions { configurationError: () => QuotationError | null; isManualProposalRequired: () => Promise; isManualRequestVerificationRequired: () => Promise; quote: () => Promise; rejectRequest: (unchainedAPI?: any) => Promise; submitRequest: (unchainedAPI?: any) => Promise; verifyRequest: (unchainedAPI?: any) => Promise; transformItemConfiguration: (params: QuotationItemConfiguration) => Promise; } export type IQuotationAdapter = IBaseAdapter & { orderIndex: number; isActivatedFor: (quotationContext: QuotationContext, unchainedAPI: any) => boolean; actions: (params: QuotationContext) => QuotationAdapterActions; }; export declare const QuotationError: { readonly ADAPTER_NOT_FOUND: "ADAPTER_NOT_FOUND"; readonly NOT_IMPLEMENTED: "NOT_IMPLEMENTED"; readonly INCOMPLETE_CONFIGURATION: "INCOMPLETE_CONFIGURATION"; readonly WRONG_CREDENTIALS: "WRONG_CREDENTIALS"; }; export type QuotationError = (typeof QuotationError)[keyof typeof QuotationError]; export declare const QuotationAdapter: Omit;