import { Initializer, DeepPartial } from "@azure-tools/codegen"; import { Extensions } from "../extensions"; import { Languages } from "../languages"; import { PrimitiveSchema, ValueSchema, Schema } from "../schema"; import { SchemaType } from "../schema-type"; import { StringSchema } from "./string"; /** a schema that represents a choice of several values (ie, an 'enum') */ export interface ChoiceSchema extends ValueSchema { /** the schema type */ type: SchemaType.Choice; /** the primitive type for the choices */ choiceType: ChoiceType; /** the possible choices for in the set */ choices: Array; } /** an individual choice in a ChoiceSchema */ export interface ChoiceValue extends Extensions { /** per-language information for this value */ language: Languages; /** the actual value */ value: string | number | boolean; } export declare class ChoiceValue extends Initializer { constructor(name: string, description: string, value: string | number | boolean, objectInitializer?: DeepPartial); } export declare class ChoiceSchema extends Schema implements ChoiceSchema { constructor(name: string, description: string, objectInitializer?: DeepPartial>); } /** a schema that represents a choice of several values (ie, an 'enum') */ export interface SealedChoiceSchema extends ValueSchema { /** the schema type */ type: SchemaType.SealedChoice; /** the primitive type for the choices */ choiceType: ChoiceType; /** the possible choices for in the set */ choices: Array; } export declare class SealedChoiceSchema extends Schema implements SealedChoiceSchema { constructor(name: string, description: string, objectInitializer?: DeepPartial>); } //# sourceMappingURL=choice.d.ts.map