export interface IAdditionalHelpLinks {
    text: string;
    url: string;
    icon?: string;
}
export interface IProviderSettings {
    bakeryRegions?: string[];
    defaults: any;
    resetToOriginal?: () => void;
}
export interface INotificationSettings {
    bearychat: {
        enabled: boolean;
    };
    email: {
        enabled: boolean;
    };
    githubStatus: {
        enabled: boolean;
    };
    googlechat: {
        enabled: boolean;
    };
    microsoftteams: {
        enabled: boolean;
    };
    pubsub: {
        enabled: boolean;
    };
    slack: {
        botName: string;
        enabled: boolean;
    };
    sms: {
        enabled: boolean;
    };
    cdevents: {
        enabled: boolean;
    };
}
export interface IFeatures {
    [key: string]: any;
    canary?: boolean;
    chaosMonkey?: boolean;
    ci?: boolean;
    displayTimestampsInUserLocalTime?: boolean;
    dockerBake?: boolean;
    entityTags?: boolean;
    executionMarkerInformationModal?: boolean;
    fiatEnabled?: boolean;
    iapRefresherEnabled?: boolean;
    lambdaAdditionalStages?: boolean;
    managedDelivery?: boolean;
    mdGitIntegration?: boolean;
    managedServiceAccounts?: boolean;
    managedResources?: boolean;
    multiBlockFailureMessages?: boolean;
    notifications?: boolean;
    pagerDuty?: boolean;
    pipelines?: boolean;
    pipelineTemplates?: boolean;
    quietPeriod?: boolean;
    roscoMode?: boolean;
    slack?: boolean;
    snapshots?: boolean;
    savePipelinesStageEnabled?: boolean;
    functions?: boolean;
    kubernetesRawResources?: boolean;
    renderPipelineStageThreshold?: number;
    deployManifestStageAdvancedConfiguration?: boolean;
}
export interface IDockerInsightSettings {
    enabled: boolean;
    url: string;
}
export interface IBannerSettings {
    key: string;
    active: boolean;
    routes: string[];
}
export interface INewApplicationDefaults {
    chaosMonkey?: boolean;
}
export interface IManagedDeliveryURLs {
    gettingStarted: string;
    root: string;
    pinning: string;
    resourceStatus: string;
    markAsBad: string;
    previewEnvironments?: string;
}
export interface ISpinnakerSettings {
    [key: string]: any;
    accountTagLimit?: number;
    analytics: {
        customConfig?: {
            siteSpeedSampleRate?: number;
        };
        ga?: string;
    };
    apiTimeoutMs: number;
    authEnabled: boolean;
    authEndpoint: string;
    authTtl: number;
    bakeryDetailUrl: string;
    banners?: IBannerSettings[];
    checkForUpdates: boolean;
    debugEnabled: boolean;
    maxRunningExecutionsToRetrieve: number;
    defaultInstancePort: number;
    defaultProviders: string[];
    defaultTimeZone: string;
    dockerInsights: IDockerInsightSettings;
    disabledImages?: string[];
    entityTags?: {
        maxUrlLength?: number;
        maxResults?: number;
    };
    executionWindow?: {
        atlas?: {
            regions: Array<{
                label: string;
                baseUrl: string;
            }>;
            url: string;
        };
    };
    feature: IFeatures;
    feedback?: {
        icon?: string;
        text?: string;
        url: string;
    };
    additionalHelpLinks?: IAdditionalHelpLinks[];
    gateUrl: string;
    gitSources: string[];
    hiddenStages: string[];
    managedDelivery?: {
        defaultManifest: string;
        manifestBasePath: string;
        urls?: Partial<IManagedDeliveryURLs>;
    };
    maxFetchHistoryOnEvaluateVariables?: number;
    maxPipelineAgeDays: number;
    newApplicationDefaults: INewApplicationDefaults;
    notifications: INotificationSettings;
    onDemandClusterThreshold: number;
    pagerDuty?: {
        accountName?: string;
        defaultDetails?: string;
        defaultSubject?: string;
        required?: boolean;
    };
    slack?: {
        baseUrl: string;
    };
    stashTriggerInfo?: string;
    pollSchedule: number;
    tasksViewLimitPerPage: number;
    providers?: {
        [key: string]: IProviderSettings;
    };
    pubsubProviders: string[];
    resetProvider: (provider: string) => () => void;
    resetToOriginal: () => void;
    searchVersion: 1 | 2;
    triggerTypes: string[];
    useClassicFirewallLabels: boolean;
    kubernetesAdHocInfraWritesEnabled: boolean;
    changelogUrl: string;
    cdevents?: {
        validUrlPattern: string;
        validCDEvent: string;
    };
}
export declare const SETTINGS: ISpinnakerSettings;
