2026-02-23 18:38:03 -06:00
@ tool
extends TwitchData
# CLASS GOT AUTOGENERATED DON'T CHANGE MANUALLY. CHANGES CAN BE OVERWRITTEN EASILY.
class_name TwitchGetExtensionTransactions
##
## #/components/schemas/GetExtensionTransactionsResponse
class Response extends TwitchData :
## The list of transactions.
@ export var data : Array [ TwitchExtensionTransaction ] :
set ( val ) :
data = val
track_data ( & " data " , val )
## Contains the information used to page through the list of results. The object is empty if there are no more pages left to page through. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
@ export var pagination : ResponsePagination :
set ( val ) :
pagination = val
track_data ( & " pagination " , val )
var response : BufferedHTTPClient . ResponseData
## Constructor with all required fields.
static func create ( _data : Array [ TwitchExtensionTransaction ] ) - > Response :
var response : Response = Response . new ( )
response . data = _data
return response
static func from_json ( d : Dictionary ) - > Response :
var result : Response = Response . new ( )
if d . get ( " data " , null ) != null :
for value in d [ " data " ] :
result . data . append ( TwitchExtensionTransaction . from_json ( value ) )
if d . get ( " pagination " , null ) != null :
result . pagination = ResponsePagination . from_json ( d [ " pagination " ] )
return result
func _has_pagination ( ) - > bool :
if pagination == null : return false
if pagination . cursor == null || pagination . cursor == " " : return false
return true
var _next_page : Callable
var _cur_iter : int = 0
func next_page ( ) - > Response :
var response : Response = await _next_page . call ( )
_cur_iter = 0
_next_page = response . _next_page
data = response . data
pagination = response . pagination
return response
func _iter_init ( iter : Array ) - > bool :
if data . is_empty ( ) : return false
iter [ 0 ] = data [ 0 ]
_cur_iter = 1
return true
func _iter_next ( iter : Array ) - > bool :
if data . size ( ) > _cur_iter :
iter [ 0 ] = data [ _cur_iter ]
_cur_iter += 1
elif not _has_pagination ( ) :
return false
return true
func _iter_get ( iter : Variant ) - > Variant :
2026-03-08 13:14:52 -05:00
if data . size ( ) == _cur_iter && _has_pagination ( ) :
2026-02-23 18:38:03 -06:00
await next_page ( )
return iter
## Contains the information used to page through the list of results. The object is empty if there are no more pages left to page through. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
## #/components/schemas/GetExtensionTransactionsResponse/Pagination
class ResponsePagination extends TwitchData :
## The cursor used to get the next page of results. Use the cursor to set the request’ s _after_ query parameter.
@ export var cursor : String :
set ( val ) :
cursor = val
track_data ( & " cursor " , val )
var response : BufferedHTTPClient . ResponseData
## Constructor with all required fields.
static func create ( ) - > ResponsePagination :
var response_pagination : ResponsePagination = ResponsePagination . new ( )
return response_pagination
static func from_json ( d : Dictionary ) - > ResponsePagination :
var result : ResponsePagination = ResponsePagination . new ( )
if d . get ( " cursor " , null ) != null :
result . cursor = d [ " cursor " ]
return result
## All optional parameters for TwitchAPI.get_extension_transactions
## #/components/schemas/GetExtensionTransactionsOpt
class Opt extends TwitchData :
## A transaction ID used to filter the list of transactions. Specify this parameter for each transaction you want to get. For example, `id=1234&id=5678`. You may specify a maximum of 100 IDs.
@ export var id : Array [ String ] :
set ( val ) :
id = val
track_data ( & " id " , val )
## The maximum number of items to return per page in the response. The minimum page size is 1 item per page and the maximum is 100 items per page. The default is 20.
@ export var first : int :
set ( val ) :
first = val
track_data ( & " first " , val )
## The cursor used to get the next page of results. The **Pagination** object in the response contains the cursor’ s value. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
@ export var after : String :
set ( val ) :
after = val
track_data ( & " after " , val )
## Constructor with all required fields.
static func create ( ) - > Opt :
var opt : Opt = Opt . new ( )
return opt
static func from_json ( d : Dictionary ) - > Opt :
var result : Opt = Opt . new ( )
if d . get ( " id " , null ) != null :
for value in d [ " id " ] :
result . id . append ( value )
if d . get ( " first " , null ) != null :
result . first = d [ " first " ]
if d . get ( " after " , null ) != null :
result . after = d [ " after " ]
return result