/** * Copyright (c) 2025, Salesforce, Inc. * All rights reserved. * For full license text, see the LICENSE file or https://utam.dev/salesforce/license */ import { Driver as _Driver, Element as _Element, Locator as _Locator, BaseUtamElement as _BaseUtamElement, UtamBaseRootPageObject as _UtamBaseRootPageObject, ClickableUtamElement as _ClickableUtamElement } from '@utam/core'; import _SalesforceStudioWelcomeMat from 'salesforce-pageobjects/applications/pageObjects/salesforceStudioWelcomeMat'; import _SalesforceStudioHome from 'salesforce-pageobjects/applications/pageObjects/salesforceStudioHome'; import _Layout from 'salesforce-pageobjects/lightning/pageObjects/layout'; import _LayoutItem from 'salesforce-pageobjects/lightning/pageObjects/layoutItem'; import _SalesforceStudioPageLayout from 'salesforce-pageobjects/applications/pageObjects/salesforceStudioPageLayout'; import _SfStudioProjectPanel from 'salesforce-pageobjects/app_dev_agent/pageObjects/sfStudioProjectPanel'; import _SfStudioHome from 'salesforce-pageobjects/app_dev_agent/pageObjects/sfStudioHome'; import _PanelMessageBlock from 'salesforce-pageobjects/app_dev_agent/pageObjects/panelMessageBlock'; import _PanelMessageInput from 'salesforce-pageobjects/app_dev_agent/pageObjects/panelMessageInput'; import _AgenticShell from 'salesforce-pageobjects/app_dev_agent/pageObjects/agenticShell'; /** * Component that serves as the main application shell for Salesforce Studio, providing navigation and content layout * Includes support for immersive chat mode, agentic shell interactions, and enhanced project creation features * Contains navigation components, router container, canvas areas, side panel chat, and close button functionality * Supports both standard and immersive modes with dynamic layout sizing and interactive elements * Selector: setup_platform_unifiedapp-salesforce-studio-app * generated from JSON dist/applications/salesforceStudioApp.utam.json * @version 2026-03-09T13:56:34.937Z * @author Salesforce */ export default class SalesforceStudioApp extends _UtamBaseRootPageObject { constructor(driver: _Driver, element?: _Element, locator?: _Locator); /** * Checks if the studio nav bar is visible * @return boolean */ isNavBarVisible(): Promise; /** * Checks if the close button for immersive chat is visible * @return boolean */ isCloseButtonVisible(): Promise; /** * Clicks the close button to exit immersive chat mode */ clickCloseButton(): Promise; /** * Checks if the immersive mode Salesforce Studio logo is visible * @return boolean */ isImmersiveLogoVisible(): Promise; /** * Checks if the side panel chat is visible * @return boolean */ isSidePanelChatVisible(): Promise; /** * Checks if the agentic shell component is present in the DOM * @return boolean */ isAgenticShellPresent(): Promise; /** * Checks if the LWR outlet is present for content rendering * @return boolean */ isLwrOutletPresent(): Promise; /** * Checks if the navigation wrapper is visible * @return boolean */ isNavigationWrapperVisible(): Promise; getRoot(): Promise<(_BaseUtamElement)>; getStudioMat(): Promise<_SalesforceStudioWelcomeMat>; getStudioHome(): Promise<_SalesforceStudioHome>; /** * Represents the router container that handles navigation events. */ getRouterContainer(): Promise<(_BaseUtamElement)>; getRouteInterceptor(): Promise<(_BaseUtamElement)>; getAppLayout(): Promise<_Layout>; /** * Represents the main content area of the application. */ getCanvasArea(): Promise<_LayoutItem>; getSalesforceStudioPageLayout(): Promise<_SalesforceStudioPageLayout>; getSfStudioProjectPanel(): Promise<_SfStudioProjectPanel>; getSfStudioHome(): Promise<_SfStudioHome>; getAssistantPanel(): Promise<(_BaseUtamElement)>; getPanelMessageBlock(): Promise<_PanelMessageBlock>; getPanelMessageInput(): Promise<_PanelMessageInput>; /** * The agentic shell component that handles chat interactions */ getAgenticShell(): Promise<_AgenticShell>; /** * The Lightning Web Runtime outlet for dynamic content rendering */ getLwrOutlet(): Promise<(_BaseUtamElement)>; /** * The navigation wrapper component */ getNavigationWrapper(): Promise<(_BaseUtamElement)>; /** * The Salesforce Studio logo displayed in immersive mode */ getImmersiveStudioLogo(): Promise<(_BaseUtamElement)>; /** * The close button for immersive chat mode */ getCloseButton(): Promise<(_BaseUtamElement & _ClickableUtamElement)>; /** * Main container div for the application layout */ getContainerDiv(): Promise<(_BaseUtamElement)>; /** * The side panel chat container */ getSidePanelChat(): Promise<(_BaseUtamElement)>; }