Skip to Content

Users (user)

UserProps

Representa um usuário na plataforma (modelo completo, usado como base para outros tipos).

type UserProps = { id: string; name: string; email: string; document?: string | null; phoneNumber?: string | null; birthdate?: Date | string | null; role?: 'ADMIN' | 'USER' | string; avatar?: { url: string } | null; avatarId?: string | null; createdAt?: string; updatedAt?: string; };

Campos principais:

  • id / name / email – Identificador único, nome completo e e-mail principal.
  • document? – CPF do usuário (apenas números, ex: "11111111111").
  • phoneNumber? – Telefone no formato internacional (ex: "+5511999999999").
  • birthdate? – Data de nascimento (Date ou string ISO, ex: "2001-01-01T00:00:00.000Z").
  • role? – Papel do usuário ("ADMIN", "USER", etc.).
  • avatar? – Objeto com url da imagem de avatar.
  • avatarId? – ID da imagem de avatar (em contextos de atualização).
  • createdAt? / updatedAt? – Datas de criação e última atualização do cadastro.

GetMeUserProps

Apenas as propriedades retornadas por users.getMe().

type GetMeUserProps = Pick< UserProps, 'id' | 'name' | 'email' | 'document' | 'phoneNumber' | 'birthdate' | 'role' | 'avatar' >;

GetUserEventsProps

Evento retornado por users.getEvents() — subconjunto de EventProps: id, slug, name, description, status, startsAt, endsAt, opensAt, timezone, canceledAt, address, image e channel (id, name, slug, avatar).

type GetUserEventsProps = Pick< EventProps, | 'id' | 'slug' | 'name' | 'description' | 'status' | 'startsAt' | 'endsAt' | 'opensAt' | 'timezone' | 'canceledAt' | 'address' | 'image' > & { channel: Pick<ChannelProps, 'id' | 'name' | 'slug' | 'avatar'>; };

GetUserOrdersProps / UserOrderProps

Retorno de users.getOrders(): array de pedidos do usuário. Cada pedido (UserOrderProps) contém id, status, totalPrice, totalFee, totalInsurance (pode vir como string, ex. "0"), createdAt e items.

type GetUserOrdersProps = { orders: UserOrderProps[] }; type UserOrderProps = Pick< OrderProps, 'id' | 'status' | 'totalPrice' | 'createdAt' | 'totalFee' > & { totalInsurance?: number | string; items: UserOrderItemProps[]; };

UserOrderItemProps / UserOrderItemTicketProps / UserOrderItemEventProps / UserOrderItemGroupProps

Tipos dos itens em users.getOrders(): cada item tem id, amount e ticket. O ticket tem name, group (pode ser só { name } sem id) e event (name, startsAt, endsAt, channel com id, name, avatar).

Last updated on