/*
* Lance Namespace Specification
*
* This OpenAPI specification is a part of the Lance namespace specification. It contains 2 parts: The `components/schemas`, `components/responses`, `components/examples`, `tags` sections define the request and response shape for each operation in a Lance Namespace across all implementations. See https://lance.org/format/namespace/operations for more details. The `servers`, `security`, `paths`, `components/parameters` sections are for the Lance REST Namespace implementation, which defines a complete REST server that can work with Lance datasets. See https://lance.org/format/namespace/rest for more details.
*
* The version of the OpenAPI document: 1.0.0
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ListTableVersionsRequest {
#[serde(rename = "identity", skip_serializing_if = "Option::is_none")]
pub identity: Option<Box<models::Identity>>,
/// Arbitrary context for a request as key-value pairs. How to use the context is custom to the specific implementation. REST NAMESPACE ONLY Context entries are passed via HTTP headers using the naming convention `x-lance-ctx-<key>: <value>`. For example, a context entry `{\"trace_id\": \"abc123\"}` would be sent as the header `x-lance-ctx-trace_id: abc123`.
#[serde(rename = "context", skip_serializing_if = "Option::is_none")]
pub context: Option<std::collections::HashMap<String, String>>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<Vec<String>>,
/// An opaque token that allows pagination for list operations (e.g. ListNamespaces). For an initial request of a list operation, if the implementation cannot return all items in one response, or if there are more items than the page limit specified in the request, the implementation must return a page token in the response, indicating there are more results available. After the initial request, the value of the page token from each response must be used as the page token value for the next request. Caller must interpret either `null`, missing value or empty string value of the page token from the implementation's response as the end of the listing results.
#[serde(rename = "page_token", skip_serializing_if = "Option::is_none")]
pub page_token: Option<String>,
/// An inclusive upper bound of the number of results that a caller will receive.
#[serde(rename = "limit", skip_serializing_if = "Option::is_none")]
pub limit: Option<i32>,
/// When true, versions are guaranteed to be returned in descending order (latest to oldest). When false or not specified, the ordering is implementation-defined.
#[serde(rename = "descending", skip_serializing_if = "Option::is_none")]
pub descending: Option<bool>,
}
impl ListTableVersionsRequest {
pub fn new() -> ListTableVersionsRequest {
ListTableVersionsRequest {
identity: None,
context: None,
id: None,
page_token: None,
limit: None,
descending: None,
}
}
}