import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { SystemMessageContentChunks, SystemMessageContentChunks$Outbound } from "./systemmessagecontentchunks.js";
export type SystemMessageContent = string | Array<SystemMessageContentChunks>;
export declare const Role: {
    readonly System: "system";
};
export type Role = ClosedEnum<typeof Role>;
export type SystemMessage = {
    content: string | Array<SystemMessageContentChunks>;
    role?: Role | undefined;
};
/** @internal */
export type SystemMessageContent$Outbound = string | Array<SystemMessageContentChunks$Outbound>;
/** @internal */
export declare const SystemMessageContent$outboundSchema: z.ZodType<SystemMessageContent$Outbound, z.ZodTypeDef, SystemMessageContent>;
export declare function systemMessageContentToJSON(systemMessageContent: SystemMessageContent): string;
/** @internal */
export declare const Role$outboundSchema: z.ZodNativeEnum<typeof Role>;
/** @internal */
export type SystemMessage$Outbound = {
    content: string | Array<SystemMessageContentChunks$Outbound>;
    role: string;
};
/** @internal */
export declare const SystemMessage$outboundSchema: z.ZodType<SystemMessage$Outbound, z.ZodTypeDef, SystemMessage>;
export declare function systemMessageToJSON(systemMessage: SystemMessage): string;
//# sourceMappingURL=systemmessage.d.ts.map