/// import { DarkModeProps, RecursivePartial } from '@leafygreen-ui/lib'; declare const NavElement: { readonly OrgNavOrgSettings: "orgNavOrgSettings"; readonly OrgNavAccessManagerDropdown: "orgNavAccessManagerDropdown"; readonly OrgNavSupport: "orgNavSupport"; readonly OrgNavNewCase: "orgNavNewCase"; readonly OrgNavBilling: "orgNavBilling"; readonly OrgNavAdmin: "orgNavAdmin"; readonly OrgNavDocs: "orgNavDocs"; readonly OrgNavAllClusters: "orgNavAllClusters"; readonly Logout: "logout"; readonly OrgNavLeaf: "leaf"; readonly OrgNavOrgSelectTrigger: "orgNavOrgSelectTrigger"; readonly OrgNavOrgSelectSearch: "orgNavOrgSelectSearch"; readonly OrgNavViewAllOrganizations: "orgNavViewAllOrganizations"; readonly OrgNavDropdownOrgAccessManager: "orgNavDropdownOrgAccessManager"; readonly OrgNavDropdownProjectAccessManager: "orgNavDropdownProjectAccessManager"; readonly OrgNavDropdownGetHelp: "orgNavDropdownGetHelp"; readonly ProjectNavProjectSelectTrigger: "projectNavProjectSelectTrigger"; readonly ProjectNavProjectSelectSearch: "projectNavProjectSelectSearch"; readonly ProjectNavViewAllProjects: "projectNavViewAllProjects"; readonly ProjectNavAddProject: "projectNavAddProject"; readonly ProjectNavProjectDropdown: "projectNavProjectDropdown"; readonly ProjectNavProjectSettings: "projectNavProjectSettings"; readonly ProjectNavProjectSupport: "projectNavProjectSupport"; readonly ProjectNavProjectIntegrations: "projectNavProjectIntegrations"; readonly ProjectNavCloud: "projectNavCloud"; readonly ProjectNavRealm: "projectNavRealm"; readonly ProjectNavCharts: "projectNavCharts"; readonly ProjectNavInvite: "projectNavInvite"; readonly ProjectNavActivityFeed: "projectNavActivityFeed"; readonly ProjectNavAlerts: "projectNavAlerts"; readonly UserMenuTrigger: "userMenuTrigger"; readonly UserMenuFeedback: "userMenuFeedback"; readonly UserMenuCloud: "userMenuCloud"; readonly UserMenuCloudMFA: "userMenuCloudMFA"; readonly UserMenuCloudInvitations: "userMenuCloudInvitations"; readonly UserMenuCloudOrganizations: "userMenuCloudOrganizations"; readonly UserMenuCloudUserPreferences: "userMenuCloudUserPreferences"; readonly UserMenuCloudOther: "userMenuCloudOther"; readonly UserMenuOnPremProfile: "userMenuOnPremProfile"; readonly UserMenuOnPremTwoFactorAuth: "userMenuOnPremTwoFactorAuth"; readonly UserMenuOnPremPersonalization: "userMenuOnPremPersonalization"; readonly UserMenuOnPremInvitations: "userMenuOnPremInvitations"; readonly UserMenuOnPremOrganizations: "userMenuOnPremOrganizations"; readonly UserMenuOnPremPublicApiAccess: "userMenuOnPremPublicApiAccess"; readonly UserMenuOnPremFeatureRequest: "userMenuOnPremFeatureRequest"; readonly UserMenuOnPremSignOut: "userMenuOnPremSignOut"; readonly UserMenuOnPremOther: "userMenuOnPremOther"; readonly UserMenuDocs: "userMenuDocs"; readonly UserMenuUniversity: "userMenuUniversity"; readonly UserMenuDevHub: "userMenuDevHub"; readonly UserMenuForums: "userMenuForums"; readonly UserMenuSupport: "userMenuSupport"; readonly UserMenuLogout: "userMenuLogout"; }; type NavElement = typeof NavElement[keyof typeof NavElement]; export { NavElement }; declare const ActiveNavElement: { readonly OrgNavOrgSettings: "orgNavOrgSettings"; readonly OrgNavAccessManagerDropdown: "orgNavAccessManagerDropdown"; readonly OrgNavSupport: "orgNavSupport"; readonly OrgNavBilling: "orgNavBilling"; readonly OrgNavAdmin: "orgNavAdmin"; readonly OrgNavAllClusters: "orgNavAllClusters"; readonly OrgNavDropdownOrgAccessManager: "orgNavDropdownOrgAccessManager"; readonly OrgNavDropdownProjectAccessManager: "orgNavDropdownProjectAccessManager"; readonly ProjectNavInvite: "projectNavInvite"; readonly ProjectNavActivityFeed: "projectNavActivityFeed"; readonly ProjectNavAlerts: "projectNavAlerts"; readonly ProjectNavProjectSettings: "projectNavProjectSettings"; readonly ProjectNavProjectSupport: "projectNavProjectSupport"; readonly ProjectNavProjectIntegrations: "projectNavProjectIntegrations"; readonly UserMenuCloudMFA: "userMenuCloudMFA"; readonly UserMenuCloudInvitations: "userMenuCloudInvitations"; readonly UserMenuCloudOrganizations: "userMenuCloudOrganizations"; readonly UserMenuCloudUserPreferences: "userMenuCloudUserPreferences"; readonly UserMenuCloudOther: "userMenuCloudOther"; readonly UserMenuOnPremProfile: "userMenuOnPremProfile"; readonly UserMenuOnPremTwoFactorAuth: "userMenuOnPremTwoFactorAuth"; readonly UserMenuOnPremPersonalization: "userMenuOnPremPersonalization"; readonly UserMenuOnPremInvitations: "userMenuOnPremInvitations"; readonly UserMenuOnPremOrganizations: "userMenuOnPremOrganizations"; readonly UserMenuOnPremPublicApiAccess: "userMenuOnPremPublicApiAccess"; readonly UserMenuOnPremOther: "userMenuOnPremOther"; }; type ActiveNavElement = typeof ActiveNavElement[keyof typeof ActiveNavElement]; export { ActiveNavElement }; declare const Product: { readonly Charts: "charts"; readonly Cloud: "cloud"; readonly Realm: "realm"; }; type Product = typeof Product[keyof typeof Product]; export type ProductName = ('Cloud Manager' | 'Data Services') | 'Charts' | ('Realm' | 'App Services'); export { Product }; declare const Platform: { readonly University: "university"; readonly Support: "support"; readonly Cloud: "cloud"; readonly Account: "account"; readonly DevHub: "devHub"; readonly Forum: "forum"; readonly Docs: "docs"; }; type Platform = typeof Platform[keyof typeof Platform]; export { Platform }; declare const Mode: { readonly Dev: "dev"; readonly Production: "production"; }; type Mode = typeof Mode[keyof typeof Mode]; export { Mode }; declare const Variant: { readonly Organization: "organization"; readonly Project: "project"; }; type Variant = typeof Variant[keyof typeof Variant]; export { Variant }; declare const PlanType: { readonly Cloud: "cloud"; readonly Atlas: "atlas"; readonly OnPrem: "onprem"; }; type PlanType = typeof PlanType[keyof typeof PlanType]; export { PlanType }; declare const ErrorCode: { NO_AUTHORIZATION: string; }; type ErrorCode = typeof ErrorCode[keyof typeof ErrorCode]; export { ErrorCode }; declare const Environment: { Commercial: string; Government: string; }; type Environment = typeof Environment[keyof typeof Environment]; export { Environment }; export interface PostBodyInterface { activeProjectId?: string; activeOrgId?: string; } declare const OrgPaymentLabel: { readonly Embargoed: "EMBARGOED"; readonly EmbargoConfirmed: "EMBARGO_CONFIRMED"; readonly Ok: "OK"; readonly Warning: "WARNING"; readonly Suspended: "SUSPENDED"; readonly Closing: "CLOSING"; readonly AdminSuspended: "ADMIN_SUSPENDED"; readonly Dead: "DEAD"; readonly Locked: "LOCKED"; readonly Closed: "CLOSED"; }; type OrgPaymentLabel = typeof OrgPaymentLabel[keyof typeof OrgPaymentLabel]; export { OrgPaymentLabel }; declare const ProjectStatus: { Active: string; Dead: string; Closing: string; Closed: string; }; type ProjectStatus = typeof ProjectStatus[keyof typeof ProjectStatus]; export { ProjectStatus }; export interface AccountInterface { email: string; firstName: string; lastName: string; shouldSeeAccountMfaBanner?: boolean; hasLegacy2fa?: boolean; openInvitations?: number; username?: string; admin?: boolean; } export interface ProjectInterface { projectId: string; projectName: string; planType?: PlanType; orgId?: string; } export interface CurrentProjectInterface extends ProjectInterface { alertsOpen: number; chartsActivated: boolean; useCNRegionsOnly: boolean; status?: ProjectStatus; statusDisplayName?: string; } export interface OrganizationInterface { orgId: string; orgName: string; planType: PlanType; } export interface CurrentOrganizationInterface extends OrganizationInterface { paymentStatus?: OrgPaymentLabel; paymentStatusDisplayName?: string; } export interface DataInterface { readonly account: AccountInterface; currentOrganization?: CurrentOrganizationInterface; currentProject?: CurrentProjectInterface; readonly organizations: Array; readonly projects: Array; } export interface OnPremInterface { mfa?: boolean; version?: string; enabled?: boolean; } export interface UserMenuURLS { cloud?: { userPreferences: string; organizations: string; invitations: string; mfa: string; }; university?: { transcript: string; faqs: string; }; support?: { userPreferences: string; }; account?: { homepage?: string; }; logout?: string; docs?: string; devHub?: string; forums?: { forumsPreferences: string; }; } interface MongoSelectURLS { viewAllProjects?: string; viewAllOrganizations?: string; newProject?: string; orgSettings?: string; } interface OrgNavURLS { leaf?: string; settings?: string; accessManager?: string; support?: string; newCase?: string; docs?: string; billing?: string; allClusters?: string; admin?: string; } interface ProjectNavURLS { settings?: string; accessManager?: string; support?: string; integrations?: string; alerts?: string; activityFeed?: string; invite?: string; realm?: string; charts?: string; } interface OnPremURLS { profile?: string; mfa?: string; personalization?: string; invitations?: string; organizations?: string; publicApiAccess?: string; featureRequest?: string; } export interface URLSProp { userMenu?: UserMenuURLS; mongoSelect?: MongoSelectURLS; orgNav?: OrgNavURLS; projectNav?: ProjectNavURLS; onPrem?: OnPremURLS; } export interface URLS { userMenu: UserMenuURLS; mongoSelect: MongoSelectURLS; orgNav: OrgNavURLS; projectNav: ProjectNavURLS; onPrem: Required; } export interface HostsInterface { account?: string; charts?: string; cloud?: string; realm?: string; forums?: string; support?: string; university?: string; } export interface OnChangeInterface { value: string; setData: Function; event: React.ChangeEvent; } export interface MongoNavInterface extends DarkModeProps { /** * Describes what product is currently active. */ activeProduct?: Product; /** * Defines which nav item is reflected * by the current active page or path */ activeNav?: ActiveNavElement; /** * Describes whether or not user is an `admin`. */ admin?: boolean; /** * Callback invoked when user types into organization picker. Receives value of input as first argument and ChangeEvent as the second. */ onOrganizationChange?: (OnChangeInterface: OnChangeInterface) => void; /** * Callback invoked when user types into project picker. Receives value of input as first argument and ChangeEvent as the second. */ onProjectChange?: (OnChangeInterface: OnChangeInterface) => void; /** * Function to determine destination URL when user selects a organization from the organization picker, see also `hosts`. */ constructOrganizationURL?: (organization: OrganizationInterface) => string; /** * Function to determine destination URL when user selects a project from the project picker, see also `hosts`. */ constructProjectURL?: (project: ProjectInterface) => string; /** * Determines whether the project navigation should be shown. */ showProjectNav?: boolean; /** * Object where keys are MDB products and values are the desired hostURL override for that product, to enable `` to work across all environments. */ hosts?: HostsInterface; /** * Object to enable custom overrides for every `href` used in ``. */ urls?: URLSProp; /** * Describes what environment the component is being used in. * By default the value is set to `production`. */ mode?: Mode; /** * Function that is passed an error code as a string, so that consuming application can handle fetch failures. */ onError?: (error: ErrorCode) => void; /** * Callback that receives the response of the fetched data, having been converted from JSON into an object. */ onSuccess?: (response: DataInterface) => void; /** * onPrem config object with three keys: enabled, version and mfa */ onPrem?: OnPremInterface; /** * ID for active organization, will cause a POST request to cloud to update * current active organization. */ activeOrgId?: string; /** * ID for active project, will cause a POST request to cloud to update * current active project. */ activeProjectId?: string; /** * Applies a className to the root element */ className?: string; /** * Click EventHandler that receives a NavElement `type` as its first argument and the associated `MouseEvent` as its second * This prop provides a hook into product link and logout link clicks and allows consuming applications to handle routing internally */ onElementClick?: (type: NavElement, event: React.MouseEvent) => void; /** * Determines whether or not the component will fetch data from cloud */ loadData?: boolean; /** * Control fixtureData when in `dev` mode */ dataFixtures?: RecursivePartial; /** * Describes what platform is currently active. */ activePlatform?: Platform; /** * Defines interval for alert polling */ alertPollingInterval?: number; /** * Describes the environment that the consumer is in: `commercial` or `government` */ environment?: Environment; /** * Defines whether to use "App Services" brand name or "Realm" * Will be set to `true` in the next release * @default true */ useAppServicesBranding?: boolean; } //# sourceMappingURL=types.d.ts.map