import type { FormikErrors, FormikProps } from 'formik'; import React from 'react'; import type { Application, IAccount, IRegion, IWizardPageComponent } from '@spinnaker/core'; import type { IAmazonLoadBalancer, IAmazonLoadBalancerUpsertCommand } from '../../../domain'; export interface ISubnetOption { availabilityZones: string[]; deprecated?: boolean; label: string; purpose: string; vpcIds: string[]; } export interface ILoadBalancerLocationProps { app: Application; formik: FormikProps; forPipelineConfig?: boolean; isNew?: boolean; loadBalancer?: IAmazonLoadBalancer; } export interface ILoadBalancerLocationState { accounts: IAccount[]; availabilityZones: string[]; existingLoadBalancerNames: string[]; hideInternalFlag: boolean; internalFlagToggled: boolean; regions: IRegion[]; subnets: ISubnetOption[]; } export declare class LoadBalancerLocation extends React.Component implements IWizardPageComponent { state: ILoadBalancerLocationState; private props$; private destroy$; validate(values: IAmazonLoadBalancerUpsertCommand): FormikErrors; protected buildName(): void; private shouldHideInternalFlag; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; private internalFlagChanged; private getAvailableSubnets; private handleSubnetUpdated; private makeSubnetOptions; private accountUpdated; private regionUpdated; private stackChanged; private detailChanged; private handleAvailabilityZonesChanged; render(): JSX.Element; }