import { Document, Types } from 'mongoose';
export type RestaurantBannerDocument = RestaurantBanner & Document;
export declare enum BannerType {
    Restaurant = "restaurant",
    Grocery = "grocery",
    Admin = "admin",
    HomeCookedMeal = "home-cooked-meal",
    BothHomeRest = "both-home-rest"
}
export declare enum BannerApprovalStatus {
    Pending = "pending",
    Approved = "approved",
    Rejected = "rejected"
}
export declare class RestaurantBanner {
    approval_status: BannerApprovalStatus;
    type: string;
    restaurant_id: Types.ObjectId;
    banner_url: string;
    title: string;
    description: string;
    start_date: Date;
    end_date: Date;
    is_active: boolean;
    status: string;
    view_by: Types.ObjectId[];
    view_count: number;
}
export declare const RestaurantBannerSchema: import("mongoose").Schema<RestaurantBanner, import("mongoose").Model<RestaurantBanner, any, any, any, Document<unknown, any, RestaurantBanner, any, {}> & RestaurantBanner & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, RestaurantBanner, Document<unknown, {}, import("mongoose").FlatRecord<RestaurantBanner>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<RestaurantBanner> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
export declare const RestaurantBannerModel: import("mongoose").Schema<RestaurantBanner, import("mongoose").Model<RestaurantBanner, any, any, any, Document<unknown, any, RestaurantBanner, any, {}> & RestaurantBanner & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, RestaurantBanner, Document<unknown, {}, import("mongoose").FlatRecord<RestaurantBanner>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<RestaurantBanner> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
