import { z } from 'zod';
export declare const ROADMAP_DEFAULT_PAGE_SIZE = 100;
export declare enum RoadmapItemStatus {
    BACKLOG = "Backlog",
    BUILDING = "Building",
    SHIPPED = "Shipped",
    CANCELED = "Canceled"
}
export declare enum RoadmapItemPriority {
    URGENT = "Urgent",
    HIGH = "High",
    MEDIUM = "Medium",
    LOW = "Low",
    NO_PRIORITY = "No priority"
}
export type RoadmapItem = {
    ticketId: string;
    title: string;
    description: string | null;
    status: RoadmapItemStatus;
    priority: RoadmapItemPriority;
    createdAt: string;
    updatedAt: string;
    issueUrl: string | null;
    pullRequestUrl: string | null;
};
export declare const RoadmapItemSchema: z.ZodType<RoadmapItem>;
export declare const RoadmapQuerySchema: z.ZodObject<{
    page: z.ZodOptional<z.ZodNumber>;
    pageSize: z.ZodOptional<z.ZodNumber>;
}, "strict", z.ZodTypeAny, {
    page?: number | undefined;
    pageSize?: number | undefined;
}, {
    page?: number | undefined;
    pageSize?: number | undefined;
}>;
export type RoadmapQuery = z.infer<typeof RoadmapQuerySchema>;
export type RoadmapPagination = {
    page: number;
    pageSize: number;
    totalIssues: number;
    totalPages: number;
};
export declare const RoadmapPaginationSchema: z.ZodType<RoadmapPagination>;
export type RoadmapFacets = {
    statusCounts: Record<RoadmapItemStatus, number>;
    priorityCounts: Record<RoadmapItemPriority, number>;
};
export declare const RoadmapFacetsSchema: z.ZodType<RoadmapFacets>;
export type RoadmapResponse = {
    status: 'ok';
    results: RoadmapItem[];
    pagination: RoadmapPagination;
    facets: RoadmapFacets;
};
export declare const RoadmapResponseSchema: z.ZodType<RoadmapResponse>;
export type RoadmapResults = {
    data: RoadmapItem[];
    pagination: RoadmapPagination;
    facets: RoadmapFacets;
};
export type ApiRoadmapResponse = {
    status: 'ok';
    results: RoadmapResults;
};
//# sourceMappingURL=roadmap.d.ts.map