UNPKG

@tensorflow/tfjs-core

Version:

Hardware-accelerated JavaScript library for machine intelligence

74 lines (73 loc) 2.63 kB
/** * @license * Copyright 2017 Google LLC. All Rights Reserved. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ============================================================================= */ /// <amd-module name="@tensorflow/tfjs-core/dist/environment" /> import { Platform } from './platforms/platform'; type FlagValue = number | boolean | string; type FlagEvaluationFn = (() => FlagValue) | (() => Promise<FlagValue>); export type Flags = { [featureName: string]: FlagValue; }; export type FlagRegistryEntry = { evaluationFn: FlagEvaluationFn; setHook?: (value: FlagValue) => void; }; /** * The environment contains evaluated flags as well as the registered platform. * This is always used as a global singleton and can be retrieved with * `tf.env()`. * * @doc {heading: 'Environment'} */ export declare class Environment { global: any; private flags; private flagRegistry; private urlFlags; platformName: string; platform: Platform; getQueryParams: typeof getQueryParams; constructor(global: any); setPlatform(platformName: string, platform: Platform): void; registerFlag(flagName: string, evaluationFn: FlagEvaluationFn, setHook?: (value: FlagValue) => void): void; getAsync(flagName: string): Promise<FlagValue>; get(flagName: string): FlagValue; getNumber(flagName: string): number; getBool(flagName: string): boolean; getString(flagName: string): string; getFlags(): Flags; get features(): Flags; set(flagName: string, value: FlagValue): void; private evaluateFlag; setFlags(flags: Flags): void; reset(): void; private populateURLFlags; } export declare function getQueryParams(queryString: string): { [key: string]: string; }; /** * Returns the current environment (a global singleton). * * The environment object contains the evaluated feature values as well as the * active platform. * * @doc {heading: 'Environment'} */ export declare function env(): Environment; export declare let ENV: Environment; export declare function setEnvironmentGlobal(environment: Environment): void; export {};