import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Identity profile information
 */
export type CreateIdentityRequestBody = {
    /**
     * Unique string value to identify the contact user in the customer's system. This should be the same ID you use in your system to reference this user.
     */
    externalId: string;
    /**
     * Display name or nickname of the contact user. This is typically shown in user interfaces.
     */
    displayName?: string | null | undefined;
    /**
     * Email address of the contact user
     */
    email?: string | null | undefined;
    /**
     * URL linking to the contact user's avatar image
     */
    avatarUrl?: string | null | undefined;
    /**
     * Array of tags associated with the contact. Useful for organizing and filtering contacts by categories, departments, or custom classifications.
     */
    tags?: Array<string> | undefined;
    /**
     * Additional custom metadata associated with the contact as key-value pairs. Use this to store any extra information specific to your application.
     */
    metadata?: {
        [k: string]: any;
    } | undefined;
};
/**
 * Created Identity
 */
export type CreateIdentityResponseBody = {
    /**
     * Unique ULID (Universally Unique Lexicographically Sortable Identifier) for the contact
     */
    id: string;
    /**
     * Unique string value to identify the contact user in the customer's system. This should be the same ID you use in your system to reference this user.
     */
    externalId: string;
    /**
     * Unique identifier for the workspace to which the contact belongs
     */
    workspaceId: string;
    /**
     * Display name or nickname of the contact user. This is typically shown in user interfaces.
     */
    displayName?: string | null | undefined;
    /**
     * Email address of the contact user
     */
    email?: string | null | undefined;
    /**
     * URL linking to the contact user's avatar image
     */
    avatarUrl?: string | null | undefined;
    /**
     * Array of tags associated with the contact. Useful for organizing and filtering contacts by categories, departments, or custom classifications.
     */
    tags?: Array<string> | undefined;
    /**
     * Additional custom metadata associated with the contact as key-value pairs. Use this to store any extra information specific to your application.
     */
    metadata?: {
        [k: string]: any;
    } | undefined;
    /**
     * The date and time the resource was created
     */
    created?: Date | undefined;
    /**
     * The date and time the resource was last updated
     */
    updated: Date;
};
/** @internal */
export type CreateIdentityRequestBody$Outbound = {
    external_id: string;
    display_name?: string | null | undefined;
    email?: string | null | undefined;
    avatar_url?: string | null | undefined;
    tags?: Array<string> | undefined;
    metadata?: {
        [k: string]: any;
    } | undefined;
};
/** @internal */
export declare const CreateIdentityRequestBody$outboundSchema: z.ZodType<CreateIdentityRequestBody$Outbound, z.ZodTypeDef, CreateIdentityRequestBody>;
export declare function createIdentityRequestBodyToJSON(createIdentityRequestBody: CreateIdentityRequestBody): string;
/** @internal */
export declare const CreateIdentityResponseBody$inboundSchema: z.ZodType<CreateIdentityResponseBody, z.ZodTypeDef, unknown>;
export declare function createIdentityResponseBodyFromJSON(jsonString: string): SafeParseResult<CreateIdentityResponseBody, SDKValidationError>;
//# sourceMappingURL=createidentity.d.ts.map