import * as z from "zod";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export declare const SemanticThreadAggregationSelectionType: {
    readonly Aggregation: "aggregation";
};
export type SemanticThreadAggregationSelectionType = ClosedEnum<typeof SemanticThreadAggregationSelectionType>;
export declare const SemanticThreadAggregationSelectionAggregation: {
    readonly Sum: "sum";
    readonly Count: "count";
    readonly CountDistinct: "countDistinct";
    readonly Avg: "avg";
    readonly Min: "min";
    readonly Max: "max";
};
export type SemanticThreadAggregationSelectionAggregation = ClosedEnum<typeof SemanticThreadAggregationSelectionAggregation>;
export declare const SemanticThreadAggregationSelectionField: {
    readonly Id: "id";
    readonly MessageIds: "messageIds";
    readonly MessagesCount: "messagesCount";
    readonly OrganizationId: "organizationId";
    readonly Question: "question";
    readonly QuestionLength: "questionLength";
    readonly Answer: "answer";
    readonly IsOnTopic: "isOnTopic";
    readonly IsClear: "isClear";
    readonly IsDocumented: "isDocumented";
    readonly IsFeatureSupported: "isFeatureSupported";
    readonly IsAnswerConfident: "isAnswerConfident";
    readonly GapSummary: "gapSummary";
    readonly Subject: "subject";
    readonly Category: "category";
    readonly Languages: "languages";
    readonly FirstPartyEntities: "firstPartyEntities";
    readonly ThirdPartyEntities: "thirdPartyEntities";
    readonly Emotion: "emotion";
    readonly Sentiment: "sentiment";
    readonly QuestionType: "questionType";
    readonly ProjectId: "projectId";
    readonly IntegrationId: "integrationId";
    readonly FirstMessageTime: "firstMessageTime";
    readonly LastMessageTime: "lastMessageTime";
    readonly LastUpdated: "lastUpdated";
    readonly HasPositiveFeedback: "hasPositiveFeedback";
    readonly HasNegativeFeedback: "hasNegativeFeedback";
    readonly ConversationIds: "conversationIds";
    readonly AreAIAnnotationsVerified: "areAIAnnotationsVerified";
    readonly IsInitialQuestionAnswer: "isInitialQuestionAnswer";
};
export type SemanticThreadAggregationSelectionField = ClosedEnum<typeof SemanticThreadAggregationSelectionField>;
export type SemanticThreadAggregationSelection = {
    type: SemanticThreadAggregationSelectionType;
    aggregation: SemanticThreadAggregationSelectionAggregation;
    field?: SemanticThreadAggregationSelectionField | undefined;
    path?: Array<string> | undefined;
};
/** @internal */
export declare const SemanticThreadAggregationSelectionType$inboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionType>;
/** @internal */
export declare const SemanticThreadAggregationSelectionType$outboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionType>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace SemanticThreadAggregationSelectionType$ {
    /** @deprecated use `SemanticThreadAggregationSelectionType$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Aggregation: "aggregation";
    }>;
    /** @deprecated use `SemanticThreadAggregationSelectionType$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Aggregation: "aggregation";
    }>;
}
/** @internal */
export declare const SemanticThreadAggregationSelectionAggregation$inboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionAggregation>;
/** @internal */
export declare const SemanticThreadAggregationSelectionAggregation$outboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionAggregation>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace SemanticThreadAggregationSelectionAggregation$ {
    /** @deprecated use `SemanticThreadAggregationSelectionAggregation$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Sum: "sum";
        readonly Count: "count";
        readonly CountDistinct: "countDistinct";
        readonly Avg: "avg";
        readonly Min: "min";
        readonly Max: "max";
    }>;
    /** @deprecated use `SemanticThreadAggregationSelectionAggregation$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Sum: "sum";
        readonly Count: "count";
        readonly CountDistinct: "countDistinct";
        readonly Avg: "avg";
        readonly Min: "min";
        readonly Max: "max";
    }>;
}
/** @internal */
export declare const SemanticThreadAggregationSelectionField$inboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionField>;
/** @internal */
export declare const SemanticThreadAggregationSelectionField$outboundSchema: z.ZodNativeEnum<typeof SemanticThreadAggregationSelectionField>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace SemanticThreadAggregationSelectionField$ {
    /** @deprecated use `SemanticThreadAggregationSelectionField$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Id: "id";
        readonly MessageIds: "messageIds";
        readonly MessagesCount: "messagesCount";
        readonly OrganizationId: "organizationId";
        readonly Question: "question";
        readonly QuestionLength: "questionLength";
        readonly Answer: "answer";
        readonly IsOnTopic: "isOnTopic";
        readonly IsClear: "isClear";
        readonly IsDocumented: "isDocumented";
        readonly IsFeatureSupported: "isFeatureSupported";
        readonly IsAnswerConfident: "isAnswerConfident";
        readonly GapSummary: "gapSummary";
        readonly Subject: "subject";
        readonly Category: "category";
        readonly Languages: "languages";
        readonly FirstPartyEntities: "firstPartyEntities";
        readonly ThirdPartyEntities: "thirdPartyEntities";
        readonly Emotion: "emotion";
        readonly Sentiment: "sentiment";
        readonly QuestionType: "questionType";
        readonly ProjectId: "projectId";
        readonly IntegrationId: "integrationId";
        readonly FirstMessageTime: "firstMessageTime";
        readonly LastMessageTime: "lastMessageTime";
        readonly LastUpdated: "lastUpdated";
        readonly HasPositiveFeedback: "hasPositiveFeedback";
        readonly HasNegativeFeedback: "hasNegativeFeedback";
        readonly ConversationIds: "conversationIds";
        readonly AreAIAnnotationsVerified: "areAIAnnotationsVerified";
        readonly IsInitialQuestionAnswer: "isInitialQuestionAnswer";
    }>;
    /** @deprecated use `SemanticThreadAggregationSelectionField$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Id: "id";
        readonly MessageIds: "messageIds";
        readonly MessagesCount: "messagesCount";
        readonly OrganizationId: "organizationId";
        readonly Question: "question";
        readonly QuestionLength: "questionLength";
        readonly Answer: "answer";
        readonly IsOnTopic: "isOnTopic";
        readonly IsClear: "isClear";
        readonly IsDocumented: "isDocumented";
        readonly IsFeatureSupported: "isFeatureSupported";
        readonly IsAnswerConfident: "isAnswerConfident";
        readonly GapSummary: "gapSummary";
        readonly Subject: "subject";
        readonly Category: "category";
        readonly Languages: "languages";
        readonly FirstPartyEntities: "firstPartyEntities";
        readonly ThirdPartyEntities: "thirdPartyEntities";
        readonly Emotion: "emotion";
        readonly Sentiment: "sentiment";
        readonly QuestionType: "questionType";
        readonly ProjectId: "projectId";
        readonly IntegrationId: "integrationId";
        readonly FirstMessageTime: "firstMessageTime";
        readonly LastMessageTime: "lastMessageTime";
        readonly LastUpdated: "lastUpdated";
        readonly HasPositiveFeedback: "hasPositiveFeedback";
        readonly HasNegativeFeedback: "hasNegativeFeedback";
        readonly ConversationIds: "conversationIds";
        readonly AreAIAnnotationsVerified: "areAIAnnotationsVerified";
        readonly IsInitialQuestionAnswer: "isInitialQuestionAnswer";
    }>;
}
/** @internal */
export declare const SemanticThreadAggregationSelection$inboundSchema: z.ZodType<SemanticThreadAggregationSelection, z.ZodTypeDef, unknown>;
/** @internal */
export type SemanticThreadAggregationSelection$Outbound = {
    type: string;
    aggregation: string;
    field?: string | undefined;
    path?: Array<string> | undefined;
};
/** @internal */
export declare const SemanticThreadAggregationSelection$outboundSchema: z.ZodType<SemanticThreadAggregationSelection$Outbound, z.ZodTypeDef, SemanticThreadAggregationSelection>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace SemanticThreadAggregationSelection$ {
    /** @deprecated use `SemanticThreadAggregationSelection$inboundSchema` instead. */
    const inboundSchema: z.ZodType<SemanticThreadAggregationSelection, z.ZodTypeDef, unknown>;
    /** @deprecated use `SemanticThreadAggregationSelection$outboundSchema` instead. */
    const outboundSchema: z.ZodType<SemanticThreadAggregationSelection$Outbound, z.ZodTypeDef, SemanticThreadAggregationSelection>;
    /** @deprecated use `SemanticThreadAggregationSelection$Outbound` instead. */
    type Outbound = SemanticThreadAggregationSelection$Outbound;
}
export declare function semanticThreadAggregationSelectionToJSON(semanticThreadAggregationSelection: SemanticThreadAggregationSelection): string;
export declare function semanticThreadAggregationSelectionFromJSON(jsonString: string): SafeParseResult<SemanticThreadAggregationSelection, SDKValidationError>;
//# sourceMappingURL=semanticthreadaggregationselection.d.ts.map