import { Schema } from "./schema"; import { AnyObjectSchema, AnySchema } from "./schemas/any"; import { ArraySchema, ByteArraySchema } from "./schemas/array"; import { BinarySchema } from "./schemas/binary"; import { ChoiceSchema, SealedChoiceSchema } from "./schemas/choice"; import { ConditionalSchema, SealedConditionalSchema } from "./schemas/conditional"; import { ConstantSchema } from "./schemas/constant"; import { DictionarySchema } from "./schemas/dictionary"; import { FlagSchema } from "./schemas/flag"; import { NumberSchema } from "./schemas/number"; import { ObjectSchema, GroupSchema } from "./schemas/object"; import { BooleanSchema, CharSchema } from "./schemas/primitive"; import { OrSchema, XorSchema } from "./schemas/relationship"; import { StringSchema, UuidSchema, UriSchema, CredentialSchema, ODataQuerySchema, ArmIdSchema } from "./schemas/string"; import { UnixTimeSchema, DateSchema, DateTimeSchema, DurationSchema, TimeSchema } from "./schemas/time"; export { SchemaUsage, SchemaContext } from "./schemas/usage"; /** the full set of schemas for a given service, categorized into convenient collections */ export interface Schemas { /** a collection of items */ arrays?: Array; /** an associative array (ie, dictionary, hashtable, etc) */ dictionaries?: Array; /** a true or false value */ booleans?: Array; /** a number value */ numbers?: Array; /** an object of some type */ objects?: Array; /** a string of characters */ strings?: Array; /** UnixTime */ unixtimes?: Array; /** ByteArray -- an array of bytes */ byteArrays?: Array; streams?: Array; /** a single character */ chars?: Array; /** a Date */ dates?: Array; /** a time */ times?: Array; /** a DateTime */ dateTimes?: Array; /** a Duration */ durations?: Array; /** a universally unique identifier */ uuids?: Array; /** an URI of some kind */ uris?: Array; /** an URI of some kind */ armIds?: ArmIdSchema[]; /** a password or credential */ credentials?: Array; /** OData Query */ odataQueries?: Array; /** a choice between one of several values (ie, 'enum') * * @description - this is essentially can be thought of as an 'enum' * that is a choice between one of several items, but an unspecified value is permitted. */ choices?: Array; /** a choice between one of several values (ie, 'enum') * * @description - this is essentially can be thought of as an 'enum' * that is a choice between one of several items, but an unknown value is not allowed. */ sealedChoices?: Array; /** * a schema that infers a value when a given parameter holds a given value * * @description ie, when 'profile' is 'production', use '2018-01-01' for apiversion */ conditionals?: Array; sealedConditionals?: Array; flags?: Array; /** a constant value */ constants?: Array; ors?: Array; xors?: Array; binaries?: Array; /** the type is not known. * * @description it's possible that we just may make this an error * in representation. */ unknowns?: Array; groups?: Array; any?: Array; anyObjects?: AnyObjectSchema[]; } export declare class Schemas { add(schema: T): T; } //# sourceMappingURL=schemas.d.ts.map