import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { MessagingAttachment } from "./messagingattachment.js";
import { RawResponse } from "./rawresponse.js";
export declare enum MessagingMessageResult2 {
    True = "true",
    False = "false"
}
/**
 * The user active status
 */
export type MessagingMessageResultActive = boolean | MessagingMessageResult2;
/**
 * Author of the message
 */
export type MessagingMessageResultAuthor = {
    /**
     * The user active status
     */
    active?: boolean | MessagingMessageResult2 | null | undefined;
    /**
     * The created_at date
     */
    createdAt?: Date | null | undefined;
    /**
     * The user email
     */
    email?: string | null | undefined;
    /**
     * The external ID associated with this user
     */
    externalReference?: string | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * The user name
     */
    name?: string | null | undefined;
    /**
     * The user phone number
     */
    phoneNumber?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Custom Unified Fields configured in your StackOne project
     */
    unifiedCustomFields?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * The updated_at date
     */
    updatedAt?: Date | null | undefined;
};
/**
 * Content of the message
 */
export type MessagingMessageResultContent = {
    /**
     * HTML content of the message
     */
    html?: string | null | undefined;
    /**
     * Plain text content of the message
     */
    plain?: string | null | undefined;
};
export type MessagingMessageResultData = {
    /**
     * List of attachments in the message
     */
    attachments?: Array<MessagingAttachment> | null | undefined;
    /**
     * Author of the message
     */
    author?: MessagingMessageResultAuthor | null | undefined;
    /**
     * Content of the message
     */
    content?: MessagingMessageResultContent | null | undefined;
    /**
     * Timestamp when the message was created
     */
    createdAt?: Date | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * ID of the parent message if this is a reply
     */
    parentMessageId?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Timestamp when the message was last updated
     */
    updatedAt?: Date | null | undefined;
};
export type MessagingMessageResult = {
    data?: MessagingMessageResultData | null | undefined;
    raw?: Array<RawResponse> | null | undefined;
};
/** @internal */
export declare const MessagingMessageResult2$inboundSchema: z.ZodNativeEnum<typeof MessagingMessageResult2>;
/** @internal */
export declare const MessagingMessageResultActive$inboundSchema: z.ZodType<MessagingMessageResultActive, z.ZodTypeDef, unknown>;
export declare function messagingMessageResultActiveFromJSON(jsonString: string): SafeParseResult<MessagingMessageResultActive, SDKValidationError>;
/** @internal */
export declare const MessagingMessageResultAuthor$inboundSchema: z.ZodType<MessagingMessageResultAuthor, z.ZodTypeDef, unknown>;
export declare function messagingMessageResultAuthorFromJSON(jsonString: string): SafeParseResult<MessagingMessageResultAuthor, SDKValidationError>;
/** @internal */
export declare const MessagingMessageResultContent$inboundSchema: z.ZodType<MessagingMessageResultContent, z.ZodTypeDef, unknown>;
export declare function messagingMessageResultContentFromJSON(jsonString: string): SafeParseResult<MessagingMessageResultContent, SDKValidationError>;
/** @internal */
export declare const MessagingMessageResultData$inboundSchema: z.ZodType<MessagingMessageResultData, z.ZodTypeDef, unknown>;
export declare function messagingMessageResultDataFromJSON(jsonString: string): SafeParseResult<MessagingMessageResultData, SDKValidationError>;
/** @internal */
export declare const MessagingMessageResult$inboundSchema: z.ZodType<MessagingMessageResult, z.ZodTypeDef, unknown>;
export declare function messagingMessageResultFromJSON(jsonString: string): SafeParseResult<MessagingMessageResult, SDKValidationError>;
//# sourceMappingURL=messagingmessageresult.d.ts.map