/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { Value, ValueSchema } from "../../core";
/**
 * {@link ValueSchema} to allowed types for that schema.
 * @alpha
 */
export declare type TypedValue<TValue extends ValueSchema> = {
    [ValueSchema.Nothing]: undefined;
    [ValueSchema.Number]: number;
    [ValueSchema.String]: string;
    [ValueSchema.Boolean]: boolean;
    [ValueSchema.Serializable]: Value;
}[TValue];
/**
 * {@link ValueSchema} for privative types.
 * @alpha
 */
export declare type PrimitiveValueSchema = ValueSchema.Number | ValueSchema.String | ValueSchema.Boolean;
/**
 * @alpha
 */
export declare type ValuesOf<T> = T[keyof T];
//# sourceMappingURL=schemaAwareUtil.d.ts.map