import { HapiServiceFunctionWithLifecycleHooks, WindowHapiService } from "../_window/service.types"; import { OrderJourneyStepKey } from "../orderJourney/enums"; import { Contract, ContractCredential, ContractDirectApplyChannelPrefillVariablesMap, ContractDirectApplyPostingRequirementQuestionnaireQuestionBody, ContractDirectApplyPostingRequirementQuestionnaireQuestionIgnoreReason, ContractDirectApplyPostingRequirementQuestionnaireRules, ContractGroup } from "./types"; import { PaginatedAPIResponseV1, PostingRequirementOption, PostingRequirementsAutocompleteRequestOption, TransformedPostingRequirement } from "../common/types"; import { WindowHapiModuleWithConstructorArgs } from "../_window"; import { Modals } from "../modal"; import { ContractDirectApplyChannelName } from "./enums"; import { OrderJourneyChannelPostingRequirementsStepOptions } from "../orderJourney"; export type ContractServiceGetContractPostingRequirementOptionsHandler = (contractId: string, fieldName: string, autocompleteRequestOptions: PostingRequirementsAutocompleteRequestOption[]) => Promise; export type ContractServiceGetContractsHandler = (offset: number, queryParams?: URLSearchParams, shouldAppendResults?: boolean) => Promise>; export type ContractServiceGetFilteredContractsHandler = (offset: number) => Promise>; export type ContractServiceGetContractGroupsHandler = () => Promise; export type ContractServiceGetContractsLabeledHandler = (offset?: number, limit?: number, labels?: Record | null) => Promise>; export type ContractServiceCreateContractHandler = () => Promise; export type ContractServiceSaveContractHandler = () => Promise; export type ContractServiceRemoveContractHandler = (contractId: string) => Promise; export type ContractServiceRemoveContractGroupHandler = (groupIdx: number) => Promise; export type ContractServiceUpdateContractGroupHandler = (groupIdx: number, groupName: string) => Promise; export type ContractServiceCreateContractGroupHandler = () => Promise; export type ContractServiceGetContractHandler = (id: string) => Promise; export type ContractServiceGetContractChannelPostingRequirementQuestionnaireRulesForDirectApplyResponse = { rules: ContractDirectApplyPostingRequirementQuestionnaireRules; directApplyVariables: ContractDirectApplyChannelPrefillVariablesMap; questionnairePostingRequirement: TransformedPostingRequirement; contractInBasket: Contract; }; export type ContractServiceGetContractChannelPostingRequirementQuestionnaireBodyForDirectApplyResponse = { hasIgnoredQuestions: boolean; ignoredQuestionDetails: ContractDirectApplyPostingRequirementQuestionnaireQuestionIgnoreReason[]; validQuestions: ContractDirectApplyPostingRequirementQuestionnaireQuestionBody[]; } & ContractServiceGetContractChannelPostingRequirementQuestionnaireRulesForDirectApplyResponse; export type ContractServicePrefillContractChannelPostingRequirementQuestionnaireForDirectApplyHandler = (channelName: ContractDirectApplyChannelName, questionsBody: ContractDirectApplyPostingRequirementQuestionnaireQuestionBody[], questionnairePostingRequirementName?: string) => Promise; export type ContractServiceSetContractChannelPostingRequirementQuestionnaireOptionsDirectApplyHandler = (channelName: ContractDirectApplyChannelName, partialOptions: OrderJourneyChannelPostingRequirementsStepOptions, questionnairePostingRequirementName?: string) => Promise; export type ContractServiceGetContractChannelPostingRequirementQuestionnaireBodyForDirectApplyHandler = (channelName: ContractDirectApplyChannelName, questionsBody: ContractDirectApplyPostingRequirementQuestionnaireQuestionBody[], questionnairePostingRequirementName?: string) => Promise; export type ContractServiceGetContractChannelPostingRequirementQuestionnaireRulesForDirectApplyHandler = (channelName: ContractDirectApplyChannelName, questionnairePostingRequirementName?: string) => Promise; export type ContractServiceGetContractPostingRequirementOptionsFromCacheOrAPIHandler = (contractId: string, fieldName: string, autocompleteRequestOptions: PostingRequirementsAutocompleteRequestOption[], forceRefresh?: boolean) => Promise; export type ContractServiceLoadMoreContractsHandler = () => Promise>; export type WindowHapiServiceContract = WindowHapiModuleWithConstructorArgs<{ onAfterContractEditModalOpenClose: (currentModals: Modals, previousModals: Modals) => void; getContractPostingRequirementOptions: HapiServiceFunctionWithLifecycleHooks; getFilteredContracts: HapiServiceFunctionWithLifecycleHooks; getContractsLabeled: HapiServiceFunctionWithLifecycleHooks; getContracts: HapiServiceFunctionWithLifecycleHooks; getContractGroups: HapiServiceFunctionWithLifecycleHooks; createContract: HapiServiceFunctionWithLifecycleHooks; removeContract: HapiServiceFunctionWithLifecycleHooks; saveContract: HapiServiceFunctionWithLifecycleHooks; createContractGroup: HapiServiceFunctionWithLifecycleHooks; getContract: HapiServiceFunctionWithLifecycleHooks; prefillContractChannelPostingRequirementQuestionnaireForDirectApply: HapiServiceFunctionWithLifecycleHooks; getContractChannelPostingRequirementQuestionnaireBodyForDirectApply: HapiServiceFunctionWithLifecycleHooks; getContractChannelPostingRequirementQuestionnaireRulesForDirectApply: HapiServiceFunctionWithLifecycleHooks; setContractChannelPostingRequirementQuestionnaireOptionsDirectApply: HapiServiceFunctionWithLifecycleHooks; getContractPostingRequirementOptionsFromCacheOrAPI: HapiServiceFunctionWithLifecycleHooks; loadMoreContracts: HapiServiceFunctionWithLifecycleHooks; initiateOauthLogin: (contractId: string | number, orderJourneyStepActive: OrderJourneyStepKey, credential: ContractCredential) => void; setDefaultContractForm: () => void; setDefaultContractGroupForm: () => void; }, { readonly service: WindowHapiService; }>; //# sourceMappingURL=service.types.d.ts.map