import { z } from 'zod';
export declare const NoteConstructorInterfaceSchema: z.ZodIntersection<z.ZodIntersection<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
    type: z.ZodLiteral<"name">;
    name: z.ZodString;
}, "strip", z.ZodTypeAny, {
    type: "name";
    name: string;
}, {
    type: "name";
    name: string;
}>, z.ZodObject<{
    type: z.ZodLiteral<"pitch">;
    pitch: z.ZodString;
    octave: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    type: "pitch";
    pitch: string;
    octave: number;
}, {
    type: "pitch";
    pitch: string;
    octave: number;
}>, z.ZodObject<{
    type: z.ZodLiteral<"midi">;
    midi: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    type: "midi";
    midi: number;
}, {
    type: "midi";
    midi: number;
}>]>, z.ZodObject<{
    velocity: z.ZodOptional<z.ZodNumber>;
    noteOffVelocity: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    velocity?: number | undefined;
    noteOffVelocity?: number | undefined;
}, {
    velocity?: number | undefined;
    noteOffVelocity?: number | undefined;
}>>, z.ZodDiscriminatedUnion<"timeType", [z.ZodObject<{
    timeType: z.ZodLiteral<"seconds">;
    time: z.ZodNumber;
    duration: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    timeType: "seconds";
    time: number;
    duration?: number | undefined;
}, {
    timeType: "seconds";
    time: number;
    duration?: number | undefined;
}>, z.ZodObject<{
    timeType: z.ZodLiteral<"ticks">;
    ticks: z.ZodNumber;
    durationTicks: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    timeType: "ticks";
    ticks: number;
    durationTicks?: number | undefined;
}, {
    timeType: "ticks";
    ticks: number;
    durationTicks?: number | undefined;
}>]>>;
export declare const ControlChangeInterfaceSchema: z.ZodIntersection<z.ZodObject<{
    number: z.ZodNumber;
    value: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    number: number;
    value: number;
}, {
    number: number;
    value: number;
}>, z.ZodUnion<[z.ZodObject<{
    time: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    time: number;
}, {
    time: number;
}>, z.ZodObject<{
    ticks: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    ticks: number;
}, {
    ticks: number;
}>]>>;
export declare const PitchBendInterfaceSchema: z.ZodIntersection<z.ZodObject<{
    value: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    value: number;
}, {
    value: number;
}>, z.ZodUnion<[z.ZodObject<{
    time: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    time: number;
}, {
    time: number;
}>, z.ZodObject<{
    ticks: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    ticks: number;
}, {
    ticks: number;
}>]>>;
