import { z } from "zod";
export declare const postVideoInputSchema: z.ZodObject<{
    title: z.ZodString;
    description: z.ZodString;
    youtube_id: z.ZodString;
    thumbnail: z.ZodString;
    duration: z.ZodNumber;
    size: z.ZodNumber;
    likes: z.ZodNumber;
    views: z.ZodNumber;
    published_at: z.ZodString;
}, "strip", z.ZodTypeAny, {
    duration?: number;
    title?: string;
    description?: string;
    youtube_id?: string;
    thumbnail?: string;
    size?: number;
    likes?: number;
    views?: number;
    published_at?: string;
}, {
    duration?: number;
    title?: string;
    description?: string;
    youtube_id?: string;
    thumbnail?: string;
    size?: number;
    likes?: number;
    views?: number;
    published_at?: string;
}>;
export declare const postVideoOutputSchema: z.ZodObject<{
    success: z.ZodBoolean;
    message: z.ZodString;
}, "strip", z.ZodTypeAny, {
    message?: string;
    success?: boolean;
}, {
    message?: string;
    success?: boolean;
}>;
export declare const getVideosInputSchema: z.ZodObject<{
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
    sortBy: z.ZodOptional<z.ZodString>;
    sortOrder: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    limit?: number;
    offset?: number;
    sortBy?: string;
    sortOrder?: string;
}, {
    limit?: number;
    offset?: number;
    sortBy?: string;
    sortOrder?: string;
}>;
export declare const getVideosOutputSchema: z.ZodObject<{
    success: z.ZodBoolean;
    message: z.ZodString;
    videos: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        title: z.ZodString;
        duration: z.ZodNumber;
        description: z.ZodString;
        thumbnail: z.ZodString;
        size: z.ZodNumber;
        likes: z.ZodNumber;
        views: z.ZodNumber;
        published_at: z.ZodString;
        videoTags: z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            name: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            id?: string;
            name?: string;
        }, {
            id?: string;
            name?: string;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }, {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }>, "many">;
    pagination: z.ZodObject<{
        total: z.ZodNumber;
        limit: z.ZodNumber;
        offset: z.ZodNumber;
        hasMore: z.ZodBoolean;
    }, "strip", z.ZodTypeAny, {
        limit?: number;
        offset?: number;
        total?: number;
        hasMore?: boolean;
    }, {
        limit?: number;
        offset?: number;
        total?: number;
        hasMore?: boolean;
    }>;
}, "strip", z.ZodTypeAny, {
    message?: string;
    videos?: {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }[];
    success?: boolean;
    pagination?: {
        limit?: number;
        offset?: number;
        total?: number;
        hasMore?: boolean;
    };
}, {
    message?: string;
    videos?: {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }[];
    success?: boolean;
    pagination?: {
        limit?: number;
        offset?: number;
        total?: number;
        hasMore?: boolean;
    };
}>;
export declare const getVideoByTagsInputSchema: z.ZodObject<{
    tags: z.ZodArray<z.ZodString, "many">;
}, "strip", z.ZodTypeAny, {
    tags?: string[];
}, {
    tags?: string[];
}>;
export declare const getVideoByTagsOutputSchema: z.ZodObject<{
    success: z.ZodBoolean;
    message: z.ZodString;
    videos: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        title: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        id?: string;
        title?: string;
    }, {
        id?: string;
        title?: string;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    message?: string;
    videos?: {
        id?: string;
        title?: string;
    }[];
    success?: boolean;
}, {
    message?: string;
    videos?: {
        id?: string;
        title?: string;
    }[];
    success?: boolean;
}>;
export declare const getVideoByIdInputSchema: z.ZodObject<{
    id: z.ZodString;
}, "strip", z.ZodTypeAny, {
    id?: string;
}, {
    id?: string;
}>;
export declare const getVideoByIdOutputSchema: z.ZodObject<{
    success: z.ZodBoolean;
    message: z.ZodString;
    video: z.ZodObject<{
        id: z.ZodString;
        title: z.ZodString;
        duration: z.ZodNumber;
        description: z.ZodString;
        thumbnail: z.ZodString;
        size: z.ZodNumber;
        likes: z.ZodNumber;
        views: z.ZodNumber;
        published_at: z.ZodString;
        videoTags: z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            name: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            id?: string;
            name?: string;
        }, {
            id?: string;
            name?: string;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }, {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    }>;
}, "strip", z.ZodTypeAny, {
    message?: string;
    video?: {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    };
    success?: boolean;
}, {
    message?: string;
    video?: {
        duration?: number;
        id?: string;
        title?: string;
        description?: string;
        thumbnail?: string;
        size?: number;
        likes?: number;
        views?: number;
        published_at?: string;
        videoTags?: {
            id?: string;
            name?: string;
        }[];
    };
    success?: boolean;
}>;
export declare const videosSchema: {
    duration: number;
    id: string;
    title: string;
    description: string;
    youtube_id: string;
    thumbnail: string;
    size: number;
    likes: number;
    views: number;
    published_at: Date;
    created_at: Date;
};
export declare const videoTagsSchema: {
    id: string;
    video_id: string;
    tag_id: string;
};
