Buckets:
| /** | |
| * @license | |
| * Copyright 2021 Google LLC | |
| * SPDX-License-Identifier: BSD-3-Clause | |
| */ | |
| /** | |
| * The Context type defines a type brand to associate a key value with the context value type | |
| */ | |
| export type Context<KeyType, ValueType> = KeyType & {__context__: ValueType}; | |
| /** | |
| * @deprecated use Context instead | |
| */ | |
| export type ContextKey<KeyType, ValueType> = Context<KeyType, ValueType>; | |
| /** | |
| * A helper type which can extract a Context value type from a Context type | |
| */ | |
| export type ContextType<Key extends Context<unknown, unknown>> = | |
| Key extends Context<unknown, infer ValueType> ? ValueType : never; | |
| /** | |
| * Creates a typed Context. | |
| * | |
| * Contexts are compared with strict equality. | |
| * | |
| * If you want two separate `createContext()` calls to referer to the same | |
| * context, then use a key that will by equal under strict equality like a | |
| * string for `Symbol.for()`: | |
| * | |
| * ```ts | |
| * // true | |
| * createContext('my-context') === createContext('my-context') | |
| * // true | |
| * createContext(Symbol.for('my-context')) === createContext(Symbol.for('my-context')) | |
| * ``` | |
| * | |
| * If you want a context to be unique so that it's guaranteed to not collide | |
| * with other contexts, use a key that's unique under strict equality, like | |
| * a `Symbol()` or object.: | |
| * | |
| * ``` | |
| * // false | |
| * createContext({}) === createContext({}) | |
| * // false | |
| * createContext(Symbol('my-context')) === createContext(Symbol('my-context')) | |
| * ``` | |
| * | |
| * @param key a context key value | |
| * @template ValueType the type of value that can be provided by this context. | |
| * @returns the context key value cast to `Context<K, ValueType>` | |
| */ | |
| export function createContext<ValueType, K = unknown>(key: K) { | |
| return key as Context<K, ValueType>; | |
| } | |
Xet Storage Details
- Size:
- 1.7 kB
- Xet hash:
- 3443d3ada7b8cb289d80cc4c4249ea6bf2f5877877d5caa16fd1b1e850ba30be
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.