@tensorflow/tfjs-core
Version:
Hardware-accelerated JavaScript library for machine intelligence
74 lines (73 loc) • 2.63 kB
TypeScript
/**
* @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 {};