import { CategoryService } from './category.service';
import { CreateCatergoryDto, FindAllcategory, RequestCategoryDto, FindAllCategoryRequestsDto, UpdateCategoryRequestStatusDto, ReorderCategoryDto } from './dto/category.dto';
export declare class CategoryController {
    private readonly categoryService;
    constructor(categoryService: CategoryService);
    create(body: CreateCatergoryDto, req: any): Promise<{
        data: import("mongoose").Document<unknown, {}, import("./schema/category.schema").Category, {}, {}> & import("./schema/category.schema").Category & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    requestCategory(body: RequestCategoryDto, req: any): Promise<{
        data: import("mongoose").Document<unknown, {}, import("./schema/category-request.schema").CategoryRequest, {}, {}> & import("./schema/category-request.schema").CategoryRequest & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    reorderCategories(body: ReorderCategoryDto, type?: string): Promise<{
        message: string;
    }>;
    initSortOrder(type?: string): Promise<{
        message: string;
    }>;
    findAll(body: FindAllcategory): Promise<{
        data: any[];
        data_count: number;
    }>;
    VendorFindAll(body: FindAllcategory, req: any): Promise<{
        data: any[];
        data_count: any;
    }>;
    getCategoryRequests(body: FindAllCategoryRequestsDto, req: any): Promise<{
        data: (import("mongoose").Document<unknown, {}, import("./schema/category-request.schema").CategoryRequest, {}, {}> & import("./schema/category-request.schema").CategoryRequest & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        })[];
        data_count: number;
        counts: {
            total: number;
            pending: number;
            approved: number;
            rejected: number;
        };
    }>;
    updateCategoryRequestStatus(id: string, body: UpdateCategoryRequestStatusDto): Promise<{
        message: string;
        data: import("mongoose").Document<unknown, {}, import("./schema/category-request.schema").CategoryRequest, {}, {}> & import("./schema/category-request.schema").CategoryRequest & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    findOne(id: string): Promise<{
        data: import("mongoose").Document<unknown, {}, import("./schema/category.schema").Category, {}, {}> & import("./schema/category.schema").Category & {
            _id: import("mongoose").Types.ObjectId;
        } & {
            __v: number;
        };
    }>;
    update(id: string, body: CreateCatergoryDto, req: any): Promise<{
        message: string;
    }>;
    remove(id: string, transferCategory: string, req: any): Promise<{
        message: string;
    }>;
    removedByVendor(id: string, req: any): Promise<{
        message: string;
    }>;
}
