import type { DuplicateClientFieldsConfiguration } from './duplicate-client-fields-configuration'; import type { FourEyesPrincipleConfiguration } from './four-eyes-principle-configuration'; import type { GroupSizeLimitConfiguration } from './group-size-limit-configuration'; import type { LoanExposureConfiguration } from './loan-exposure-configuration'; export interface InternalControlsConfiguration { allowMultipleGroupMemberships: boolean; allowMultipleLoans: boolean; approvalDisbursalTwoManRuleEnabled: boolean; arrearsDaysBeforeWriteOff: number; assignmentConstraints: Array; availableDashboardSections: Array; defaultClientState: InternalControlsConfigurationDefaultClientStateEnum; defaultLineOfCreditState: InternalControlsConfigurationDefaultLineOfCreditStateEnum; duplicateClientFieldsConfiguration: DuplicateClientFieldsConfiguration; fourEyesPrincipleConfiguration?: FourEyesPrincipleConfiguration; groupSizeLimit: GroupSizeLimitConfiguration; loanExposure: LoanExposureConfiguration; maxAllowedUndoClosurePeriod: number; } export declare const InternalControlsConfigurationAssignmentConstraintsEnum: { readonly Branch: "BRANCH"; readonly Centre: "CENTRE"; readonly CreditOfficer: "CREDIT_OFFICER"; readonly Group: "GROUP"; }; export type InternalControlsConfigurationAssignmentConstraintsEnum = (typeof InternalControlsConfigurationAssignmentConstraintsEnum)[keyof typeof InternalControlsConfigurationAssignmentConstraintsEnum]; export declare const InternalControlsConfigurationAvailableDashboardSectionsEnum: { readonly LatestActivity: "LATEST_ACTIVITY"; readonly Tasks: "TASKS"; readonly FavouriteViews: "FAVOURITE_VIEWS"; readonly Indicators: "INDICATORS"; readonly CurrentTills: "CURRENT_TILLS"; readonly Clients: "CLIENTS"; readonly UpcomingRepayments: "UPCOMING_REPAYMENTS"; }; export type InternalControlsConfigurationAvailableDashboardSectionsEnum = (typeof InternalControlsConfigurationAvailableDashboardSectionsEnum)[keyof typeof InternalControlsConfigurationAvailableDashboardSectionsEnum]; export declare const InternalControlsConfigurationDefaultClientStateEnum: { readonly PendingApproval: "PENDING_APPROVAL"; readonly Inactive: "INACTIVE"; }; export type InternalControlsConfigurationDefaultClientStateEnum = (typeof InternalControlsConfigurationDefaultClientStateEnum)[keyof typeof InternalControlsConfigurationDefaultClientStateEnum]; export declare const InternalControlsConfigurationDefaultLineOfCreditStateEnum: { readonly PendingApproval: "PENDING_APPROVAL"; readonly Approved: "APPROVED"; }; export type InternalControlsConfigurationDefaultLineOfCreditStateEnum = (typeof InternalControlsConfigurationDefaultLineOfCreditStateEnum)[keyof typeof InternalControlsConfigurationDefaultLineOfCreditStateEnum];