/** * Copyright 2018 Google LLC * * Distributed under MIT license. * See file LICENSE for detail or copy at https://opensource.org/licenses/MIT */ /// import { OutgoingHttpHeaders } from 'http'; export declare const BASE_PATH = "/computeMetadata/v1"; export declare const HOST_ADDRESS = "http://169.254.169.254"; export declare const SECONDARY_HOST_ADDRESS = "http://metadata.google.internal."; export declare const HEADER_NAME = "Metadata-Flavor"; export declare const HEADER_VALUE = "Google"; export declare const HEADERS: Readonly<{ "Metadata-Flavor": "Google"; }>; /** * Metadata server detection override options. * * Available via `process.env.METADATA_SERVER_DETECTION`. */ export declare const METADATA_SERVER_DETECTION: Readonly<{ 'assume-present': "don't try to ping the metadata server, but assume it's present"; none: "don't try to ping the metadata server, but don't try to use it either"; 'bios-only': "treat the result of a BIOS probe as canonical (don't fall back to pinging)"; 'ping-only': "skip the BIOS probe, and go straight to pinging"; }>; export interface Options { params?: { [index: string]: string; }; property?: string; headers?: OutgoingHttpHeaders; } /** * Obtain metadata for the current GCE instance */ export declare function instance(options?: string | Options): Promise; /** * Obtain metadata for the current GCP Project. */ export declare function project(options?: string | Options): Promise; /** * Determine if the metadata server is currently available. */ export declare function isAvailable(): Promise; /** * reset the memoized isAvailable() lookup. */ export declare function resetIsAvailableCache(): void; /** * A cache for the detected GCP Residency. */ export declare let gcpResidencyCache: boolean | null; /** * Detects GCP Residency. * Caches results to reduce costs for subsequent calls. * * @see setGCPResidency for setting */ export declare function getGCPResidency(): boolean; /** * Sets the detected GCP Residency. * Useful for forcing metadata server detection behavior. * * Set `null` to autodetect the environment (default behavior). * @see getGCPResidency for getting */ export declare function setGCPResidency(value?: boolean | null): void; /** * Obtain the timeout for requests to the metadata server. * * In certain environments and conditions requests can take longer than * the default timeout to complete. This function will determine the * appropriate timeout based on the environment. * * @returns {number} a request timeout duration in milliseconds. */ export declare function requestTimeout(): number; export * from './gcp-residency';