import * as Schema from "effect/Schema";
import { BadRequest, Forbidden, NotFound } from "../../errors.ts";
export declare const ConversationsTicketsListInput: Schema.Struct<{
    readonly project_id: Schema.String;
    readonly assignee: Schema.optional<Schema.String>;
    readonly channel_detail: Schema.optional<Schema.Literals<readonly ["slack_bot_mention", "slack_channel_message", "slack_emoji_reaction", "teams_bot_mention", "teams_channel_message", "widget_api", "widget_embedded"]>>;
    readonly channel_source: Schema.optional<Schema.Literals<readonly ["email", "slack", "teams", "widget"]>>;
    readonly date_from: Schema.optional<Schema.String>;
    readonly date_to: Schema.optional<Schema.String>;
    readonly distinct_ids: Schema.optional<Schema.String>;
    readonly limit: Schema.optional<Schema.Number>;
    readonly offset: Schema.optional<Schema.Number>;
    readonly order_by: Schema.optional<Schema.Literals<readonly ["-created_at", "-sla_due_at", "-ticket_number", "-updated_at", "created_at", "sla_due_at", "ticket_number", "updated_at"]>>;
    readonly priority: Schema.optional<Schema.String>;
    readonly search: Schema.optional<Schema.String>;
    readonly sla: Schema.optional<Schema.Literals<readonly ["at-risk", "breached", "on-track"]>>;
    readonly status: Schema.optional<Schema.String>;
    readonly tags: Schema.optional<Schema.String>;
}>;
export type ConversationsTicketsListInput = typeof ConversationsTicketsListInput.Type;
export declare const ConversationsTicketsListOutput: Schema.Struct<{
    readonly count: Schema.optional<Schema.Number>;
    readonly next: Schema.optional<Schema.NullOr<Schema.String>>;
    readonly previous: Schema.optional<Schema.NullOr<Schema.String>>;
    readonly results: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly ticket_number: Schema.optional<Schema.Number>;
        readonly channel_source: Schema.optional<Schema.Literals<readonly ["widget", "email", "slack", "teams"]>>;
        readonly channel_detail: Schema.optional<Schema.Unknown>;
        readonly distinct_id: Schema.optional<Schema.String>;
        readonly status: Schema.optional<Schema.Literals<readonly ["new", "open", "pending", "on_hold", "resolved"]>>;
        readonly priority: Schema.optional<Schema.Unknown>;
        readonly assignee: Schema.optional<Schema.Struct<{
            readonly id: Schema.optional<Schema.NullOr<Schema.String>>;
            readonly type: Schema.optional<Schema.String>;
            readonly user: Schema.optional<Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>>;
            readonly role: Schema.optional<Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>>;
        }>>;
        readonly anonymous_traits: Schema.optional<Schema.Unknown>;
        readonly ai_resolved: Schema.optional<Schema.Boolean>;
        readonly escalation_reason: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly created_at: Schema.optional<Schema.String>;
        readonly updated_at: Schema.optional<Schema.String>;
        readonly message_count: Schema.optional<Schema.Number>;
        readonly last_message_at: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly last_message_text: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly unread_team_count: Schema.optional<Schema.Number>;
        readonly unread_customer_count: Schema.optional<Schema.Number>;
        readonly session_id: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly session_context: Schema.optional<Schema.Unknown>;
        readonly sla_due_at: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly snoozed_until: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly slack_channel_id: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly slack_thread_ts: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly slack_team_id: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly email_subject: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly email_from: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly email_to: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly cc_participants: Schema.optional<Schema.Unknown>;
        readonly person: Schema.optional<Schema.NullOr<Schema.Struct<{
            readonly id: Schema.optional<Schema.String>;
            readonly name: Schema.optional<Schema.String>;
            readonly distinct_ids: Schema.optional<Schema.$Array<Schema.String>>;
            readonly properties: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
            readonly created_at: Schema.optional<Schema.String>;
            readonly is_identified: Schema.optional<Schema.Boolean>;
        }>>>;
        readonly tags: Schema.optional<Schema.$Array<Schema.Unknown>>;
    }>>>;
}>;
export type ConversationsTicketsListOutput = typeof ConversationsTicketsListOutput.Type;
/**
 * List tickets with person data attached.
 *
 * @param assignee - Filter by assignee. Use `unassigned` for tickets with no assignee, `user:<user_id>` for a specific user, or `role:<role_uuid>` for a role.
 * @param channel_detail - Filter by the channel sub-type (e.g. `widget_embedded`, `slack_bot_mention`).
 * @param channel_source - Filter by the channel the ticket originated from.
 * @param date_from - Only include tickets updated on or after this date. Accepts absolute dates (`2026-01-01`) or relative ones (`-7d`, `-1mStart`). Pass `all` to disable the filter.
 * @param date_to - Only include tickets updated on or before this date. Same format as `date_from`.
 * @param distinct_ids - Comma-separated list of person `distinct_id`s to filter by (max 100).
 * @param limit - Number of results to return per page.
 * @param offset - The initial index from which to return the results.
 * @param order_by - Sort order. Prefix with `-` for descending. Defaults to `-updated_at`.
 * @param priority - Filter by priority. Accepts a single value or a comma-separated list (e.g. `medium,high`). Valid values: `low`, `medium`, `high`.
 * @param project_id - Project ID of the project you're trying to access. To find the ID of the project, make a call to /api/projects/.
 * @param search - Free-text search. A numeric value matches a ticket number exactly; otherwise matches against the customer's name or email (case-insensitive, partial match).
 * @param sla - Filter by SLA state. `breached` = past `sla_due_at`, `at-risk` = due within the next hour, `on-track` = more than an hour remaining.
 * @param status - Filter by status. Accepts a single value or a comma-separated list (e.g. `new,open,pending`). Valid values: `new`, `open`, `pending`, `on_hold`, `resolved`.
 * @param tags - JSON-encoded array of tag names to filter by, e.g. `["billing","urgent"]`.
 */
export declare const conversationsTicketsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly assignee?: string | undefined;
    readonly channel_detail?: "slack_bot_mention" | "slack_channel_message" | "slack_emoji_reaction" | "teams_bot_mention" | "teams_channel_message" | "widget_api" | "widget_embedded" | undefined;
    readonly channel_source?: "email" | "slack" | "teams" | "widget" | undefined;
    readonly date_from?: string | undefined;
    readonly date_to?: string | undefined;
    readonly distinct_ids?: string | undefined;
    readonly limit?: number | undefined;
    readonly offset?: number | undefined;
    readonly order_by?: "-created_at" | "-sla_due_at" | "-ticket_number" | "-updated_at" | "created_at" | "sla_due_at" | "ticket_number" | "updated_at" | undefined;
    readonly priority?: string | undefined;
    readonly project_id: string;
    readonly search?: string | undefined;
    readonly sla?: "at-risk" | "breached" | "on-track" | undefined;
    readonly status?: string | undefined;
    readonly tags?: string | undefined;
}, {
    readonly count?: number | undefined;
    readonly next?: string | null | undefined;
    readonly previous?: string | null | undefined;
    readonly results?: readonly {
        readonly ai_resolved?: boolean | undefined;
        readonly anonymous_traits?: unknown;
        readonly assignee?: {
            readonly id?: string | null | undefined;
            readonly role?: {
                readonly [x: string]: string;
            } | null | undefined;
            readonly type?: string | undefined;
            readonly user?: {
                readonly [x: string]: string;
            } | null | undefined;
        } | undefined;
        readonly cc_participants?: unknown;
        readonly channel_detail?: unknown;
        readonly channel_source?: "email" | "slack" | "teams" | "widget" | undefined;
        readonly created_at?: string | undefined;
        readonly distinct_id?: string | undefined;
        readonly email_from?: string | null | undefined;
        readonly email_subject?: string | null | undefined;
        readonly email_to?: string | null | undefined;
        readonly escalation_reason?: string | null | undefined;
        readonly id?: string | undefined;
        readonly last_message_at?: string | null | undefined;
        readonly last_message_text?: string | null | undefined;
        readonly message_count?: number | undefined;
        readonly person?: {
            readonly created_at?: string | undefined;
            readonly distinct_ids?: readonly string[] | undefined;
            readonly id?: string | undefined;
            readonly is_identified?: boolean | undefined;
            readonly name?: string | undefined;
            readonly properties?: {
                readonly [x: string]: unknown;
            } | undefined;
        } | null | undefined;
        readonly priority?: unknown;
        readonly session_context?: unknown;
        readonly session_id?: string | null | undefined;
        readonly sla_due_at?: string | null | undefined;
        readonly slack_channel_id?: string | null | undefined;
        readonly slack_team_id?: string | null | undefined;
        readonly slack_thread_ts?: string | null | undefined;
        readonly snoozed_until?: string | null | undefined;
        readonly status?: "new" | "on_hold" | "open" | "pending" | "resolved" | undefined;
        readonly tags?: readonly unknown[] | undefined;
        readonly ticket_number?: number | undefined;
        readonly unread_customer_count?: number | undefined;
        readonly unread_team_count?: number | undefined;
        readonly updated_at?: string | undefined;
    }[] | undefined;
}, BadRequest | Forbidden | NotFound, import("~/credentials.ts").Credentials>;
//# sourceMappingURL=conversationsTicketsList.d.ts.map