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";
import { OpenAIContentItem, OpenAIContentItem$Outbound } from "./openaicontentitem.js";
import { OpenAIToolCall, OpenAIToolCall$Outbound } from "./openaitoolcall.js";
export declare const Type: {
    readonly Openai: "openai";
};
export type Type = ClosedEnum<typeof Type>;
/**
 * The unique identifier for the user. This value is sent by the inkeep widget.
 */
export type Id = string | number;
/**
 * The unique identifier for the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
 */
export type UserId = string | number;
/**
 * A customizable collection of custom properties or attributes. Some properties have first class support for the Inkeep Portal or Widget and are noted in the description.
 */
export type UserProperties = {
    /**
     * The unique identifier for the user. This value is sent by the inkeep widget.
     */
    id?: string | number | null | undefined;
    /**
     * The type of identification for the user. This value is sent by the inkeep widget.
     */
    identificationType?: string | null | undefined;
    /**
     * The unique identifier for the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
     */
    userId?: string | number | null | undefined;
    /**
     * The name of the support agent assigned to the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
     */
    supportAgentName?: string | null | undefined;
    additionalProperties?: {
        [k: string]: any;
    };
};
export declare const Visibility: {
    readonly Private: "private";
    readonly Public: "public";
};
export type Visibility = ClosedEnum<typeof Visibility>;
export declare const CreateOpenAIConversationRole: {
    readonly System: "system";
    readonly User: "user";
    readonly Assistant: "assistant";
};
export type CreateOpenAIConversationRole = ClosedEnum<typeof CreateOpenAIConversationRole>;
export type CreateOpenAIConversationContent = string | Array<OpenAIContentItem>;
export declare const CreateOpenAIConversationType1: {
    readonly Documentation: "documentation";
    readonly Site: "site";
    readonly DiscoursePost: "discourse_post";
    readonly GithubIssue: "github_issue";
    readonly GithubDiscussion: "github_discussion";
    readonly StackoverflowQuestion: "stackoverflow_question";
    readonly DiscordForumPost: "discord_forum_post";
    readonly DiscordMessage: "discord_message";
    readonly CustomQuestionAnswer: "custom_question_answer";
};
export type CreateOpenAIConversationType1 = ClosedEnum<typeof CreateOpenAIConversationType1>;
export type CreateOpenAIConversationType = CreateOpenAIConversationType1 | string;
export type CreateOpenAIConversationLinks = {
    label?: string | null | undefined;
    url: string;
    title?: string | null | undefined;
    description?: string | null | undefined;
    type?: CreateOpenAIConversationType1 | string | null | undefined;
    breadcrumbs?: Array<string> | null | undefined;
};
/**
 * The unique identifier for the user. This value is sent by the inkeep widget.
 */
export type CreateOpenAIConversationId = string | number;
/**
 * The unique identifier for the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
 */
export type CreateOpenAIConversationUserId = string | number;
/**
 * A customizable collection of custom properties or attributes. Some properties have first class support for the Inkeep Portal or Widget and are noted in the description.
 */
export type CreateOpenAIConversationUserProperties = {
    /**
     * The unique identifier for the user. This value is sent by the inkeep widget.
     */
    id?: string | number | null | undefined;
    /**
     * The type of identification for the user. This value is sent by the inkeep widget.
     */
    identificationType?: string | null | undefined;
    /**
     * The unique identifier for the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
     */
    userId?: string | number | null | undefined;
    /**
     * The name of the support agent assigned to the user. This value is sent by the Inkeep Support Agent Copilot. This value is used to create the graphs on the Inkeep Portal.
     */
    supportAgentName?: string | null | undefined;
    additionalProperties?: {
        [k: string]: any;
    };
};
export type Messages = {
    id?: string | undefined;
    externalId?: string | null | undefined;
    externalUrl?: string | null | undefined;
    /**
     * A timestamp in ISO 8601 format with timezone information. If not provided, the current time will be used.
     */
    createdAt?: Date | null | undefined;
    /**
     * A timestamp in ISO 8601 format with timezone information. If not provided, the current time will be used.
     */
    updatedAt?: Date | null | undefined;
    role: CreateOpenAIConversationRole;
    content: string | Array<OpenAIContentItem>;
    name?: string | null | undefined;
    links?: Array<CreateOpenAIConversationLinks> | null | undefined;
    /**
     * A customizable collection of custom properties or attributes.
     */
    properties?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * A customizable collection of custom properties or attributes. Some properties have first class support for the Inkeep Portal or Widget and are noted in the description.
     */
    userProperties?: CreateOpenAIConversationUserProperties | null | undefined;
    toolCalls?: Array<OpenAIToolCall> | null | undefined;
};
export type CreateOpenAIConversation = {
    id?: string | undefined;
    externalId?: string | null | undefined;
    externalUrl?: string | null | undefined;
    type: Type;
    supportTicketConversationId?: string | null | undefined;
    /**
     * A timestamp in ISO 8601 format with timezone information. If not provided, the current time will be used.
     */
    createdAt?: Date | null | undefined;
    /**
     * A timestamp in ISO 8601 format with timezone information. If not provided, the current time will be used.
     */
    updatedAt?: Date | null | undefined;
    projectId?: string | null | undefined;
    integrationId?: string | null | undefined;
    /**
     * A customizable collection of custom properties or attributes.
     */
    properties?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * A customizable collection of custom properties or attributes. Some properties have first class support for the Inkeep Portal or Widget and are noted in the description.
     */
    userProperties?: UserProperties | null | undefined;
    tags?: Array<string> | null | undefined;
    visibility?: Visibility | null | undefined;
    /**
     * The messages in the conversation. Must be at least one message.
     */
    messages: Array<Messages>;
};
/** @internal */
export declare const Type$inboundSchema: z.ZodNativeEnum<typeof Type>;
/** @internal */
export declare const Type$outboundSchema: z.ZodNativeEnum<typeof Type>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Type$ {
    /** @deprecated use `Type$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Openai: "openai";
    }>;
    /** @deprecated use `Type$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Openai: "openai";
    }>;
}
/** @internal */
export declare const Id$inboundSchema: z.ZodType<Id, z.ZodTypeDef, unknown>;
/** @internal */
export type Id$Outbound = string | number;
/** @internal */
export declare const Id$outboundSchema: z.ZodType<Id$Outbound, z.ZodTypeDef, Id>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Id$ {
    /** @deprecated use `Id$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Id, z.ZodTypeDef, unknown>;
    /** @deprecated use `Id$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Id$Outbound, z.ZodTypeDef, Id>;
    /** @deprecated use `Id$Outbound` instead. */
    type Outbound = Id$Outbound;
}
export declare function idToJSON(id: Id): string;
export declare function idFromJSON(jsonString: string): SafeParseResult<Id, SDKValidationError>;
/** @internal */
export declare const UserId$inboundSchema: z.ZodType<UserId, z.ZodTypeDef, unknown>;
/** @internal */
export type UserId$Outbound = string | number;
/** @internal */
export declare const UserId$outboundSchema: z.ZodType<UserId$Outbound, z.ZodTypeDef, UserId>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UserId$ {
    /** @deprecated use `UserId$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UserId, z.ZodTypeDef, unknown>;
    /** @deprecated use `UserId$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UserId$Outbound, z.ZodTypeDef, UserId>;
    /** @deprecated use `UserId$Outbound` instead. */
    type Outbound = UserId$Outbound;
}
export declare function userIdToJSON(userId: UserId): string;
export declare function userIdFromJSON(jsonString: string): SafeParseResult<UserId, SDKValidationError>;
/** @internal */
export declare const UserProperties$inboundSchema: z.ZodType<UserProperties, z.ZodTypeDef, unknown>;
/** @internal */
export type UserProperties$Outbound = {
    id?: string | number | null | undefined;
    identificationType?: string | null | undefined;
    userId?: string | number | null | undefined;
    supportAgentName?: string | null | undefined;
    [additionalProperties: string]: unknown;
};
/** @internal */
export declare const UserProperties$outboundSchema: z.ZodType<UserProperties$Outbound, z.ZodTypeDef, UserProperties>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UserProperties$ {
    /** @deprecated use `UserProperties$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UserProperties, z.ZodTypeDef, unknown>;
    /** @deprecated use `UserProperties$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UserProperties$Outbound, z.ZodTypeDef, UserProperties>;
    /** @deprecated use `UserProperties$Outbound` instead. */
    type Outbound = UserProperties$Outbound;
}
export declare function userPropertiesToJSON(userProperties: UserProperties): string;
export declare function userPropertiesFromJSON(jsonString: string): SafeParseResult<UserProperties, SDKValidationError>;
/** @internal */
export declare const Visibility$inboundSchema: z.ZodNativeEnum<typeof Visibility>;
/** @internal */
export declare const Visibility$outboundSchema: z.ZodNativeEnum<typeof Visibility>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Visibility$ {
    /** @deprecated use `Visibility$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Private: "private";
        readonly Public: "public";
    }>;
    /** @deprecated use `Visibility$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Private: "private";
        readonly Public: "public";
    }>;
}
/** @internal */
export declare const CreateOpenAIConversationRole$inboundSchema: z.ZodNativeEnum<typeof CreateOpenAIConversationRole>;
/** @internal */
export declare const CreateOpenAIConversationRole$outboundSchema: z.ZodNativeEnum<typeof CreateOpenAIConversationRole>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationRole$ {
    /** @deprecated use `CreateOpenAIConversationRole$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly System: "system";
        readonly User: "user";
        readonly Assistant: "assistant";
    }>;
    /** @deprecated use `CreateOpenAIConversationRole$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly System: "system";
        readonly User: "user";
        readonly Assistant: "assistant";
    }>;
}
/** @internal */
export declare const CreateOpenAIConversationContent$inboundSchema: z.ZodType<CreateOpenAIConversationContent, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationContent$Outbound = string | Array<OpenAIContentItem$Outbound>;
/** @internal */
export declare const CreateOpenAIConversationContent$outboundSchema: z.ZodType<CreateOpenAIConversationContent$Outbound, z.ZodTypeDef, CreateOpenAIConversationContent>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationContent$ {
    /** @deprecated use `CreateOpenAIConversationContent$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversationContent, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationContent$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversationContent$Outbound, z.ZodTypeDef, CreateOpenAIConversationContent>;
    /** @deprecated use `CreateOpenAIConversationContent$Outbound` instead. */
    type Outbound = CreateOpenAIConversationContent$Outbound;
}
export declare function createOpenAIConversationContentToJSON(createOpenAIConversationContent: CreateOpenAIConversationContent): string;
export declare function createOpenAIConversationContentFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationContent, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversationType1$inboundSchema: z.ZodNativeEnum<typeof CreateOpenAIConversationType1>;
/** @internal */
export declare const CreateOpenAIConversationType1$outboundSchema: z.ZodNativeEnum<typeof CreateOpenAIConversationType1>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationType1$ {
    /** @deprecated use `CreateOpenAIConversationType1$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Documentation: "documentation";
        readonly Site: "site";
        readonly DiscoursePost: "discourse_post";
        readonly GithubIssue: "github_issue";
        readonly GithubDiscussion: "github_discussion";
        readonly StackoverflowQuestion: "stackoverflow_question";
        readonly DiscordForumPost: "discord_forum_post";
        readonly DiscordMessage: "discord_message";
        readonly CustomQuestionAnswer: "custom_question_answer";
    }>;
    /** @deprecated use `CreateOpenAIConversationType1$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Documentation: "documentation";
        readonly Site: "site";
        readonly DiscoursePost: "discourse_post";
        readonly GithubIssue: "github_issue";
        readonly GithubDiscussion: "github_discussion";
        readonly StackoverflowQuestion: "stackoverflow_question";
        readonly DiscordForumPost: "discord_forum_post";
        readonly DiscordMessage: "discord_message";
        readonly CustomQuestionAnswer: "custom_question_answer";
    }>;
}
/** @internal */
export declare const CreateOpenAIConversationType$inboundSchema: z.ZodType<CreateOpenAIConversationType, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationType$Outbound = string | string;
/** @internal */
export declare const CreateOpenAIConversationType$outboundSchema: z.ZodType<CreateOpenAIConversationType$Outbound, z.ZodTypeDef, CreateOpenAIConversationType>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationType$ {
    /** @deprecated use `CreateOpenAIConversationType$inboundSchema` instead. */
    const inboundSchema: z.ZodType<string, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationType$outboundSchema` instead. */
    const outboundSchema: z.ZodType<string, z.ZodTypeDef, string>;
    /** @deprecated use `CreateOpenAIConversationType$Outbound` instead. */
    type Outbound = CreateOpenAIConversationType$Outbound;
}
export declare function createOpenAIConversationTypeToJSON(createOpenAIConversationType: CreateOpenAIConversationType): string;
export declare function createOpenAIConversationTypeFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationType, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversationLinks$inboundSchema: z.ZodType<CreateOpenAIConversationLinks, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationLinks$Outbound = {
    label?: string | null | undefined;
    url: string;
    title?: string | null | undefined;
    description?: string | null | undefined;
    type?: string | string | null | undefined;
    breadcrumbs?: Array<string> | null | undefined;
};
/** @internal */
export declare const CreateOpenAIConversationLinks$outboundSchema: z.ZodType<CreateOpenAIConversationLinks$Outbound, z.ZodTypeDef, CreateOpenAIConversationLinks>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationLinks$ {
    /** @deprecated use `CreateOpenAIConversationLinks$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversationLinks, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationLinks$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversationLinks$Outbound, z.ZodTypeDef, CreateOpenAIConversationLinks>;
    /** @deprecated use `CreateOpenAIConversationLinks$Outbound` instead. */
    type Outbound = CreateOpenAIConversationLinks$Outbound;
}
export declare function createOpenAIConversationLinksToJSON(createOpenAIConversationLinks: CreateOpenAIConversationLinks): string;
export declare function createOpenAIConversationLinksFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationLinks, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversationId$inboundSchema: z.ZodType<CreateOpenAIConversationId, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationId$Outbound = string | number;
/** @internal */
export declare const CreateOpenAIConversationId$outboundSchema: z.ZodType<CreateOpenAIConversationId$Outbound, z.ZodTypeDef, CreateOpenAIConversationId>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationId$ {
    /** @deprecated use `CreateOpenAIConversationId$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversationId, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationId$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversationId$Outbound, z.ZodTypeDef, CreateOpenAIConversationId>;
    /** @deprecated use `CreateOpenAIConversationId$Outbound` instead. */
    type Outbound = CreateOpenAIConversationId$Outbound;
}
export declare function createOpenAIConversationIdToJSON(createOpenAIConversationId: CreateOpenAIConversationId): string;
export declare function createOpenAIConversationIdFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationId, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversationUserId$inboundSchema: z.ZodType<CreateOpenAIConversationUserId, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationUserId$Outbound = string | number;
/** @internal */
export declare const CreateOpenAIConversationUserId$outboundSchema: z.ZodType<CreateOpenAIConversationUserId$Outbound, z.ZodTypeDef, CreateOpenAIConversationUserId>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationUserId$ {
    /** @deprecated use `CreateOpenAIConversationUserId$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversationUserId, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationUserId$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversationUserId$Outbound, z.ZodTypeDef, CreateOpenAIConversationUserId>;
    /** @deprecated use `CreateOpenAIConversationUserId$Outbound` instead. */
    type Outbound = CreateOpenAIConversationUserId$Outbound;
}
export declare function createOpenAIConversationUserIdToJSON(createOpenAIConversationUserId: CreateOpenAIConversationUserId): string;
export declare function createOpenAIConversationUserIdFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationUserId, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversationUserProperties$inboundSchema: z.ZodType<CreateOpenAIConversationUserProperties, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversationUserProperties$Outbound = {
    id?: string | number | null | undefined;
    identificationType?: string | null | undefined;
    userId?: string | number | null | undefined;
    supportAgentName?: string | null | undefined;
    [additionalProperties: string]: unknown;
};
/** @internal */
export declare const CreateOpenAIConversationUserProperties$outboundSchema: z.ZodType<CreateOpenAIConversationUserProperties$Outbound, z.ZodTypeDef, CreateOpenAIConversationUserProperties>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversationUserProperties$ {
    /** @deprecated use `CreateOpenAIConversationUserProperties$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversationUserProperties, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversationUserProperties$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversationUserProperties$Outbound, z.ZodTypeDef, CreateOpenAIConversationUserProperties>;
    /** @deprecated use `CreateOpenAIConversationUserProperties$Outbound` instead. */
    type Outbound = CreateOpenAIConversationUserProperties$Outbound;
}
export declare function createOpenAIConversationUserPropertiesToJSON(createOpenAIConversationUserProperties: CreateOpenAIConversationUserProperties): string;
export declare function createOpenAIConversationUserPropertiesFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversationUserProperties, SDKValidationError>;
/** @internal */
export declare const Messages$inboundSchema: z.ZodType<Messages, z.ZodTypeDef, unknown>;
/** @internal */
export type Messages$Outbound = {
    id?: string | undefined;
    externalId?: string | null | undefined;
    externalUrl?: string | null | undefined;
    createdAt?: string | null | undefined;
    updatedAt?: string | null | undefined;
    role: string;
    content: string | Array<OpenAIContentItem$Outbound>;
    name?: string | null | undefined;
    links?: Array<CreateOpenAIConversationLinks$Outbound> | null | undefined;
    properties?: {
        [k: string]: any;
    } | null | undefined;
    userProperties?: CreateOpenAIConversationUserProperties$Outbound | null | undefined;
    tool_calls?: Array<OpenAIToolCall$Outbound> | null | undefined;
};
/** @internal */
export declare const Messages$outboundSchema: z.ZodType<Messages$Outbound, z.ZodTypeDef, Messages>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Messages$ {
    /** @deprecated use `Messages$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Messages, z.ZodTypeDef, unknown>;
    /** @deprecated use `Messages$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Messages$Outbound, z.ZodTypeDef, Messages>;
    /** @deprecated use `Messages$Outbound` instead. */
    type Outbound = Messages$Outbound;
}
export declare function messagesToJSON(messages: Messages): string;
export declare function messagesFromJSON(jsonString: string): SafeParseResult<Messages, SDKValidationError>;
/** @internal */
export declare const CreateOpenAIConversation$inboundSchema: z.ZodType<CreateOpenAIConversation, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateOpenAIConversation$Outbound = {
    id?: string | undefined;
    externalId?: string | null | undefined;
    externalUrl?: string | null | undefined;
    type: string;
    supportTicketConversationId?: string | null | undefined;
    createdAt?: string | null | undefined;
    updatedAt?: string | null | undefined;
    projectId?: string | null | undefined;
    integrationId?: string | null | undefined;
    properties?: {
        [k: string]: any;
    } | null | undefined;
    userProperties?: UserProperties$Outbound | null | undefined;
    tags?: Array<string> | null | undefined;
    visibility?: string | null | undefined;
    messages: Array<Messages$Outbound>;
};
/** @internal */
export declare const CreateOpenAIConversation$outboundSchema: z.ZodType<CreateOpenAIConversation$Outbound, z.ZodTypeDef, CreateOpenAIConversation>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateOpenAIConversation$ {
    /** @deprecated use `CreateOpenAIConversation$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateOpenAIConversation, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateOpenAIConversation$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateOpenAIConversation$Outbound, z.ZodTypeDef, CreateOpenAIConversation>;
    /** @deprecated use `CreateOpenAIConversation$Outbound` instead. */
    type Outbound = CreateOpenAIConversation$Outbound;
}
export declare function createOpenAIConversationToJSON(createOpenAIConversation: CreateOpenAIConversation): string;
export declare function createOpenAIConversationFromJSON(jsonString: string): SafeParseResult<CreateOpenAIConversation, SDKValidationError>;
//# sourceMappingURL=createopenaiconversation.d.ts.map