These types are exported from the YouVersion Platform SDK packages. They are automatically generated from the installed npm packages.
Last updated: March 25, 2026
Bible Content
BibleBook
type BibleBook = Readonly <{
id : BookUsfm ;
title : string ;
full_title : string ;
abbreviation ?: string ;
canon : "old_testament" | "new_testament" | "deuterocanon" ;
intro ?: {
id : string ;
passage_id : string ;
title : string ;
};
chapters ?: {
id : string ;
passage_id : string ;
title : string ;
verses ?: {
id : string ;
passage_id : string ;
title : string ;
}[];
}[];
}>;
BibleBookIntro
type BibleBookIntro = Readonly <{
id : string ;
passage_id : string ;
title : string ;
}>;
BibleChapter
type BibleChapter = Readonly <{
id : string ;
passage_id : string ;
title : string ;
verses ?: {
id : string ;
passage_id : string ;
title : string ;
}[];
}>;
BibleIndex
type BibleIndex = Readonly <{
text_direction : string ;
books : {
id : BookUsfm ;
title : string ;
full_title : string ;
abbreviation : string ;
canon : "old_testament" | "new_testament" | "deuterocanon" ;
chapters : {
id : string ;
title : string ;
verses : {
id : string ;
title : string ;
}[];
}[];
}[];
}>;
BibleIndexBook
type BibleIndexBook = Readonly <{
id : BookUsfm ;
title : string ;
full_title : string ;
abbreviation : string ;
canon : "old_testament" | "new_testament" | "deuterocanon" ;
chapters : {
id : string ;
title : string ;
verses : {
id : string ;
title : string ;
}[];
}[];
}>;
BibleIndexChapter
type BibleIndexChapter = Readonly <{
id : string ;
title : string ;
verses : {
id : string ;
title : string ;
}[];
}>;
BibleIndexVerse
type BibleIndexVerse = Readonly <{
id : string ;
title : string ;
}>;
BiblePassage
type BiblePassage = Readonly <{
id : string ;
content : string ;
reference : string ;
}>;
BibleVerse
type BibleVerse = Readonly <{
id : string ;
passage_id : string ;
title : string ;
}>;
BibleVersion
type BibleVersion = Readonly <{
id : number ;
abbreviation : string ;
promotional_content ?: string | null ;
copyright ?: string | null ;
info ?: string | null ;
publisher_url ?: string | null ;
language_tag : string ;
localized_abbreviation : string ;
localized_title : string ;
organization_id ?: string | null ;
title : string ;
books : BookUsfm [];
youversion_deep_link : string ;
}>;
BookUsfm
A string literal union of all valid USFM book identifiers. Includes all 66 canonical books, deuterocanonical books, and other texts.
See the complete list: USFM Reference
type BookUsfm = "GEN" | "EXO" | "LEV" | ... | "REV" | ...;
CANON
type CANON = Readonly < "old_testament" | "new_testament" | "deuterocanon" >;
SignInWithYouVersionPermissionValues
type SignInWithYouVersionPermissionValues = ( typeof SignInWithYouVersionPermission)[ keyof typeof SignInWithYouVersionPermission];
VOTD
type VOTD = Readonly <{
day : number ;
passage_id : string ;
}>;
YouVersionUserInfoJSON
interface YouVersionUserInfoJSON {
name ?: string ;
id ?: string ;
avatar_url ?: string ;
email ?: string ;
}
Languages
GetLanguagesOptions
Options for getting languages collection.
/**
* Options for getting languages collection.
*/
type GetLanguagesOptions = {
page_size ?: number | '*' ;
fields ?: ( keyof Language )[];
page_token ?: string ;
country ?: string ;
};
Language
type Language = Readonly <{
id : string ;
language : string ;
script ?: string | null ;
script_name ?: string | null ;
aliases ?: string [];
display_names ?: Record < string , unknown >;
scripts ?: string [];
variants ?: string [];
countries ?: string [];
text_direction ?: "ltr" | "rtl" ;
writing_population ?: number ;
speaking_population ?: number ;
default_bible_id ?: number | null ;
}>;
Authentication
AuthenticationScopes
type AuthenticationScopes = 'profile' | 'email' ;
AuthenticationState
interface AuthenticationState {
readonly isAuthenticated : boolean ;
readonly isLoading : boolean ;
readonly accessToken : string | null ;
readonly idToken : string | null ;
readonly result : SignInWithYouVersionResult | null ;
readonly error : Error | null ;
}
User
type User = {
avatar_url : string ;
first_name : string ;
id : string ;
last_name : string ;
};
Highlights
CreateHighlight
type CreateHighlight = {
version_id : number ;
passage_id : string ;
color : string ;
};
DeleteHighlightOptions
Options for deleting highlights.
/**
* Options for deleting highlights.
*/
type DeleteHighlightOptions = {
version_id ?: number ;
};
GetHighlightsOptions
Options for getting highlights.
/**
* Options for getting highlights.
*/
type GetHighlightsOptions = {
version_id ?: number ;
passage_id ?: string ;
};
Highlight
type Highlight = {
version_id : number ;
passage_id : string ;
color : string ;
};
HighlightColor
interface HighlightColor {
id : number ;
color : string ;
label : string ;
}
Configuration
ApiConfig
interface ApiConfig {
apiHost ?: string ;
appKey : string ;
timeout ?: number ;
installationId ?: string ;
redirectUri ?: string ;
}
StorageStrategy
Abstract storage strategy for auth-related data (callbacks, return URLs).
Implementations can use different mechanisms (sessionStorage, memory, etc.)
WARNING: Session storage has known XSS vulnerabilities. An attacker that gains
script execution access (via XSS) can read all values in sessionStorage. Consider
using a secure, HTTP-only cookie mechanism for production applications.
/**
* Abstract storage strategy for auth-related data (callbacks, return URLs).
* Implementations can use different mechanisms (sessionStorage, memory, etc.)
*
* WARNING: Session storage has known XSS vulnerabilities. An attacker that gains
* script execution access (via XSS) can read all values in sessionStorage. Consider
* using a secure, HTTP-only cookie mechanism for production applications.
*/
interface StorageStrategy {
setItem ( key : string , value : string ) : void ;
getItem ( key : string ) : string | null ;
removeItem ( key : string ) : void ;
clear () : void ;
}
UseApiDataOptions
type UseApiDataOptions = {
enabled ?: boolean ;
};
Hooks
UseApiDataResult
type UseApiDataResult < T > = {
data : T | null ;
loading : boolean ;
error : Error | null ;
refetch : () => void ;
};
Other
Collection
Generic Collection type for paginated responses
/**
* Generic Collection type for paginated responses
*/
type Collection < T > = Readonly <{
data : T [];
next_page_token : string | null ;
total_size ?: number ;
}>;
Last modified on March 26, 2026