import type { ApiSuccess, KnexPaginatedData } from '../..';
import type { AiAgentSummary, AiAgentThreadSummary, AiAgentUser } from './index';
export type AiAgentAdminFilters = {
    projectUuids?: string[];
    agentUuids?: string[];
    userUuids?: string[];
    createdFrom?: 'slack' | 'web_app';
    humanScore?: number;
    dateFrom?: string;
    dateTo?: string;
    search?: string;
};
export type AiAgentAdminSortField = 'createdAt' | 'title';
export type AiAgentAdminSort = {
    field: AiAgentAdminSortField;
    direction: 'asc' | 'desc';
};
export type AiAgentAdminFeedbackSummary = {
    upvotes: number;
    downvotes: number;
    neutral: number;
    total: number;
};
type ThreadSummary = Pick<AiAgentThreadSummary<AiAgentUser & {
    slackUserId: string | null;
    email: string | null;
}>, 'user' | 'createdAt' | 'createdFrom' | 'title' | 'uuid'>;
export type AiAgentAdminThreadSummary = ThreadSummary & {
    agent: Pick<AiAgentSummary, 'uuid' | 'name' | 'imageUrl'>;
    project: {
        uuid: string;
        name: string;
    };
    feedbackSummary: AiAgentAdminFeedbackSummary;
    promptCount: number;
    slackChannelId: string | null;
    slackThreadTs: string | null;
};
export type AiAgentAdminConversationsSummary = {
    threads: AiAgentAdminThreadSummary[];
};
export type ApiAiAgentAdminConversationsResponse = ApiSuccess<KnexPaginatedData<AiAgentAdminConversationsSummary>>;
export type ComputedAiOrganizationSettings = {
    isCopilotEnabled: boolean;
    isTrial: boolean;
};
export type AiOrganizationSettings = {
    organizationUuid: string;
    aiAgentsVisible: boolean;
    aiAgentReviewsEnabled: boolean;
    mcpContentWritesEnabled: boolean;
};
export type CreateAiOrganizationSettings = AiOrganizationSettings;
export type UpdateAiOrganizationSettings = Partial<Omit<AiOrganizationSettings, 'organizationUuid'>>;
export type ApiAiOrganizationSettingsResponse = ApiSuccess<AiOrganizationSettings & ComputedAiOrganizationSettings>;
export type ApiUpdateAiOrganizationSettingsResponse = ApiSuccess<AiOrganizationSettings>;
export {};
//# sourceMappingURL=adminTypes.d.ts.map