/**
 * Generated by orval 🍺
 * Do not edit manually.
 * messages API
 * This is the messages API schema.
 * OpenAPI spec version: 1.0.0 (v1.0)
 */
import type { ScopeLevelEnum } from "./scope_level_enum";

/**
 * Schema-only view of the channel-create 201 response.

``ChannelViewSet.create`` returns the full ``ChannelSerializer``
payload plus the freshly-minted plaintext credentials — surfaced
exactly once on creation and never retrievable again. They are
declared here as read-only fields so generated API clients see them
in the OpenAPI schema. This serializer is never used to serialize a
response directly; the view assembles the body by hand.
 */
export interface ChannelCreateResponse {
  /** primary key for the record as UUID */
  readonly id: string;
  /**
   * Human-readable name for this channel
   * @maxLength 255
   */
  name: string;
  /**
   * Type of channel
   * @maxLength 255
   */
  type: string;
  readonly scope_level: ScopeLevelEnum;
  /** Channel-specific configuration settings */
  settings?: unknown;
  /**
   * primary key for the record as UUID
   * @nullable
   */
  readonly mailbox: string | null;
  /**
   * primary key for the record as UUID
   * @nullable
   */
  readonly maildomain: string | null;
  /**
   * primary key for the record as UUID
   * @nullable
   */
  readonly user: string | null;
  /** @nullable */
  readonly last_used_at: string | null;
  /** date and time at which a record was created */
  readonly created_at: string;
  /** date and time at which a record was last updated */
  readonly updated_at: string;
  /** Plaintext API key — api_key channels and webhook channels with auth_method=api_key. */
  api_key?: string;
  /** webhook channels with auth_method=jwt — the HMAC/JWT signing secret. */
  secret?: string;
}
