import { DeepPartial } from "@azure-tools/codegen";
import { PrimitiveSchema } from "../schema";
import { SchemaType } from "../schema-type";
/** a schema that represents a Duration value */
export interface DurationSchema extends PrimitiveSchema {
    /** the schema type  */
    type: SchemaType.Duration;
}
export declare class DurationSchema extends PrimitiveSchema implements DurationSchema {
    constructor(name: string, description: string, objectInitializer?: DeepPartial<DurationSchema>);
}
/** a schema that represents a DateTime value */
export interface DateTimeSchema extends PrimitiveSchema {
    /** the schema type  */
    type: SchemaType.DateTime;
    /** date-time format  */
    format: "date-time-rfc1123" | "date-time";
}
export declare class DateTimeSchema extends PrimitiveSchema implements DateTimeSchema {
    constructor(name: string, description: string, objectInitializer?: DeepPartial<DateTimeSchema>);
}
/** a schema that represents a Date value */
export interface DateSchema extends PrimitiveSchema {
    /** the schema type  */
    type: SchemaType.Date;
}
export declare class DateSchema extends PrimitiveSchema implements DateSchema {
    constructor(name: string, description: string, objectInitializer?: DeepPartial<DateSchema>);
}
/** a schema that represents a Date value */
export interface TimeSchema extends PrimitiveSchema {
    /** the schema type  */
    type: SchemaType.Time;
}
export declare class TimeSchema extends PrimitiveSchema implements TimeSchema {
    constructor(name: string, description: string, objectInitializer?: DeepPartial<TimeSchema>);
}
/** a schema that represents a UnixTime value */
export interface UnixTimeSchema extends PrimitiveSchema {
    /** the schema type  */
    type: SchemaType.UnixTime;
}
export declare class UnixTimeSchema extends PrimitiveSchema implements UnixTimeSchema {
    constructor(name: string, description: string, objectInitializer?: DeepPartial<UnixTimeSchema>);
}
//# sourceMappingURL=time.d.ts.map