about summary refs log tree commit diff
path: root/src/state/ageAssurance/types.ts
blob: 63febb3cff4b39101d328fd255a83e40699b7559 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import {type AppBskyUnspeccedDefs} from '@atproto/api'
import {type QueryObserverBaseResult} from '@tanstack/react-query'

export type AgeAssuranceContextType = {
  /**
   * Whether the age assurance state has been fetched from the server. If user
   * is not in a region that requires AA, or AA is otherwise disabled, this
   * will always be `true`.
   */
  isReady: boolean
  /**
   * The server-reported status of the user's age verification process.
   */
  status: AppBskyUnspeccedDefs.AgeAssuranceState['status']
  /**
   * The last time the age assurance state was attempted by the user.
   */
  lastInitiatedAt: AppBskyUnspeccedDefs.AgeAssuranceState['lastInitiatedAt']
  /**
   * Indicates the user is age restricted based on the requirements of their
   * region, and their server-provided age assurance status. Does not factor in
   * the user's declared age. If AA is otherise disabled, this will always be
   * `false`.
   */
  isAgeRestricted: boolean
}

export type AgeAssuranceAPIContextType = {
  /**
   * Refreshes the age assurance state by fetching it from the server.
   */
  refetch: QueryObserverBaseResult['refetch']
}