import { ApprovalActionType, AttributeType, Class, ProductType, User, UserAndRole } from '@zeniai/client-epic-state'; import { ResponsiveSized } from '../../../../context/windowSizeProvider'; import { DisableMode } from '../../../formElements/common/common'; import { ApprovalRequireNotifyOptionType } from '../../billPay/billPaySetUp/components/formElements/SingleSelectField'; import { NonUserOption } from '../../billPay/billPaySetUp/components/formElements/UserMultiSelect'; /** * Dimensions */ export declare const D: { width: ResponsiveSized; height: ResponsiveSized; controlHeight: ResponsiveSized; paddingLeftRight: ResponsiveSized; paddingTopBottom: ResponsiveSized; marginTop: ResponsiveSized; marginBottom: ResponsiveSized; labelMarginLeft: ResponsiveSized; labelMarginRight: ResponsiveSized; labelMarginTop: ResponsiveSized; }; export interface FollowStepsSectionProps { allAccountingClasses: Class[]; allAttributes: AttributeType[]; allUserWithRoles: UserAndRole[]; approveNotifyPlaceholder: string; approversPlaceholder: string; filteredApprovers: User[]; filteredAttributes: AttributeType[]; label: { label: string; width?: number; }; notifiersPlaceholder: string; productType: ProductType; sectionId: string; stepsInfo: StepData[]; userSelectPlaceholder: string; isDisabled?: DisableMode; style?: React.CSSProperties; } export interface StepData { actors: { allNonUsers: NonUserOption[]; allUsers: User[]; selectedNonUsers: NonUserOption[]; selectedUsers: User[]; }; stepIndex: number; stepType: { allOptions: ApprovalRequireNotifyOptionType[]; selectedOption: ApprovalActionType | undefined; }; } export type FormDataKeys = keyof StepData; export declare const uniqueName: (sectionId: string, key: FormDataKeys) => `${string}.stepIndex` | `${string}.actors` | `${string}.stepType`; export type FormDataKeyUniqueNames = ReturnType; export declare function FollowStepsSectionMedium({ label, isDisabled, sectionId, style, approversPlaceholder, notifiersPlaceholder, userSelectPlaceholder, approveNotifyPlaceholder, allUserWithRoles, filteredApprovers, allAttributes, filteredAttributes, allAccountingClasses, stepsInfo, productType, }: FollowStepsSectionProps): import("react/jsx-runtime").JSX.Element; /** * Helpers */ export declare const getDefaultStepInfo: (stepIndex: number, allUsers: User[], allAttributes: AttributeType[]) => StepData; export declare const getNonUserOptions: (attributes: AttributeType[]) => NonUserOption[]; export declare const requireAndNotifyOptions: ApprovalRequireNotifyOptionType[];