/** * Provides APIs for accessing and manipulating the messages from Redux store. * These APIs can be used for different purposes e.g. validation messages, nextwork failure messages etc. * @module MessageManager */ import type { Draft } from '@reduxjs/toolkit'; import type { LocalizationService } from '../locale/LocalizationService'; import type { AllErrorMessages, MessagesConfigObject } from './types'; export declare const MESSAGES_PATH: { CONTENT_FIELDS_PATH: string[]; DATA_OBJECT_CONTENT_FIELDS_PATH: string[]; OBJECT_CONTENT_FIELDS_PATH: string[]; FIELD_MESSAGES_PATH: string[]; DATA_OBJECT_FIELD_MESSAGES_PATH: string[]; OBJECT_FIELD_MESSAGES_PATH: string[]; PAGE_MESSAGES_PATH: string[]; HTTP_MESSAGES_PATH: string[]; CASE_MESSAGE_PATH: string[]; }; /** * this function helps to get corresponding message path based on property and category params * @function getMessagesPath * @private * @param property - property name * @param pageReference - page reference of the property * @param category - category of message * @param isListEntry - is list entry * @returns - path */ export declare const getMessagesPath: (property?: string, pageReference?: string, category?: string, isListEntry?: boolean) => string[]; export declare const getTableRowErrorMessages: (allErrorMessages: AllErrorMessages, referenceList: string, rowIndex: number) => AllErrorMessages; export declare const reorderMessages: (draft: Draft>, context: string, referenceList: string, listIndex: number, listMoveToIndex: number) => void; /** * this function helps to retrieve messages from context object * @function getMessages * @public * @param config object which has information to process the messages information * @returns - messages object * * @example Example for retrieving property messages. * property - required * context - required * type - optional * category - not required * getMessages({ * type: 'error', * property: '.firstName', * context: 'app/primary_2' * }); * * @example Example for retrieving http messages. * category - required * context - required * type - optional * getMessages({ * type: 'error', * category: 'HTTP' * context: 'app/primary_2' * }); * * @example Example for retrieving page messages. * category - required * context - required * type - optional * getMessages({ * type: 'error', * category: 'PAGE' * context: 'app/primary_2' * }); */ export declare const getMessages: (config: Omit & { context: string | null; }) => any; /** * this function helps to clear validation messages on property, * http messages on context/page. * * @function clearMessages * @public * @param config object which has information to process the messages information * @example Example for clearing property messages. * clearMessages({ * type: 'error', * property: '.firstName', * context: 'app/primary_2' * }); * * @example Example for clearing http messages. * clearMessages({ * type: 'error', * category: 'HTTP' * context: 'app/primary_2' * }); * * @example Example for clearing page messages. * clearMessages({ * type: 'info', * category: 'PAGE' * context: 'app/primary_2' * }); * * */ export declare const clearMessages: (config: MessagesConfigObject) => void; /** * this function helps to add validation messages on property, * http messages on context/page. * @function addMessages * @public * @param config object which has information to process the messages information * @example Example for add http messages. * addMessages({ * messages: [ * { * type: 'error', * message: 'Validation Error' * } * ], * category: 'HTTP' * context: 'app/primary_2' * }); * * @example Example for add page messages. * addMessages({ * messages: [ * { * type: 'info', * message: 'Info Message' * } * ], * category: 'PAGE' * context: 'app/primary_2' * }); * * @example Example for add property messages. * addMessages({ * messages: [ * { * type: 'info', * message: 'Info Message' * } * ], * property: '.lastName' * context: 'app/primary_2' * }); * * */ export declare const addMessages: (config: MessagesConfigObject) => void; export declare const getAllMessagesPaths: (validationMessages: object, currentPath: string[], allPaths: string[][]) => string[][]; export declare const getContentFieldsPath: (storeDataObj: any) => string[]; /** * this function helps to retrieve all error messages from context object * @function getValidationErrorMessages * @public * @property context - (required) context where messages are stored * @returns - error messages * * @example Example for retrieving error messages. * context - required * getValidationErrorMessages('app/primary_2'); * @param localizationService - LocalizationService is responsible for providing localized string * @example getValidationErrorMessages('app/primary_2', getPConnect().getLocalizationService()); */ export declare const getValidationErrorMessages: (context: string, localizationService?: LocalizationService) => (string | { label: string; description: string; })[]; /** * this function helps to retrieve messages for Rootcontainer from root context or active container context * @function getRootContainerHttpMessages * @private * @param isNonPortalRootContainer - if renderMode is other than portal then true else false * @param activeContainerItemName - active container item name * @returns - messages object * * @example Example for retrieving http messages. * isNonPortalRootContainer - required * activeContainerItemName - optional * getRootContainerHttpMessages(true,'app/primary_1'); */ export declare const getRootContainerHttpMessages: (isNonPortalRootContainer: boolean, activeContainerItemName: string) => object; export declare const clearContextMessagesInActiveWorkArea: (context: string) => void; export declare const isCustomPageErrorExist: (context: string) => boolean; /** * Clears all context-specific messages. * * @param config - Configuration object containing the context to clear messages for. * @param config.context - The context for which to clear messages. * @returns void */ export declare const clearContextMessages: (config: Pick) => void; declare const MessageManager: { addMessages: (config: MessagesConfigObject) => void; getValidationErrorMessages: (context: string, localizationService?: LocalizationService) => (string | { label: string; description: string; })[]; getMessages: (config: Omit & { context: string | null; }) => any; clearMessages: (config: MessagesConfigObject) => void; getRootContainerHttpMessages: (isNonPortalRootContainer: boolean, activeContainerItemName: string) => object; clearContextMessagesInActiveWorkArea: (context: string) => void; clearContextMessages: (config: Pick) => void; isCustomPageErrorExist: (context: string) => boolean; }; export default MessageManager;