UNPKG

node-appwrite

Version:

Appwrite is an open-source self-hosted backend server that abstract and simplify complex and repetitive development tasks behind a very simple REST API

1,935 lines 203 kB
declare module "node-appwrite" { export namespace Models { /** * Documents List */ export type DocumentList<Document extends Models.Document> = { /** * Total number of documents documents that matched your query. */ total: number; /** * List of documents. */ documents: Document[]; } /** * Collections List */ export type CollectionList = { /** * Total number of collections documents that matched your query. */ total: number; /** * List of collections. */ collections: Collection[]; } /** * Databases List */ export type DatabaseList = { /** * Total number of databases documents that matched your query. */ total: number; /** * List of databases. */ databases: Database[]; } /** * Indexes List */ export type IndexList = { /** * Total number of indexes documents that matched your query. */ total: number; /** * List of indexes. */ indexes: Index[]; } /** * Users List */ export type UserList<Preferences extends Models.Preferences> = { /** * Total number of users documents that matched your query. */ total: number; /** * List of users. */ users: User<Preferences>[]; } /** * Sessions List */ export type SessionList = { /** * Total number of sessions documents that matched your query. */ total: number; /** * List of sessions. */ sessions: Session[]; } /** * Identities List */ export type IdentityList = { /** * Total number of identities documents that matched your query. */ total: number; /** * List of identities. */ identities: Identity[]; } /** * Logs List */ export type LogList = { /** * Total number of logs documents that matched your query. */ total: number; /** * List of logs. */ logs: Log[]; } /** * Files List */ export type FileList = { /** * Total number of files documents that matched your query. */ total: number; /** * List of files. */ files: File[]; } /** * Buckets List */ export type BucketList = { /** * Total number of buckets documents that matched your query. */ total: number; /** * List of buckets. */ buckets: Bucket[]; } /** * Teams List */ export type TeamList<Preferences extends Models.Preferences> = { /** * Total number of teams documents that matched your query. */ total: number; /** * List of teams. */ teams: Team<Preferences>[]; } /** * Memberships List */ export type MembershipList = { /** * Total number of memberships documents that matched your query. */ total: number; /** * List of memberships. */ memberships: Membership[]; } /** * Functions List */ export type FunctionList = { /** * Total number of functions documents that matched your query. */ total: number; /** * List of functions. */ functions: Function[]; } /** * Runtimes List */ export type RuntimeList = { /** * Total number of runtimes documents that matched your query. */ total: number; /** * List of runtimes. */ runtimes: Runtime[]; } /** * Deployments List */ export type DeploymentList = { /** * Total number of deployments documents that matched your query. */ total: number; /** * List of deployments. */ deployments: Deployment[]; } /** * Executions List */ export type ExecutionList = { /** * Total number of executions documents that matched your query. */ total: number; /** * List of executions. */ executions: Execution[]; } /** * Countries List */ export type CountryList = { /** * Total number of countries documents that matched your query. */ total: number; /** * List of countries. */ countries: Country[]; } /** * Continents List */ export type ContinentList = { /** * Total number of continents documents that matched your query. */ total: number; /** * List of continents. */ continents: Continent[]; } /** * Languages List */ export type LanguageList = { /** * Total number of languages documents that matched your query. */ total: number; /** * List of languages. */ languages: Language[]; } /** * Currencies List */ export type CurrencyList = { /** * Total number of currencies documents that matched your query. */ total: number; /** * List of currencies. */ currencies: Currency[]; } /** * Phones List */ export type PhoneList = { /** * Total number of phones documents that matched your query. */ total: number; /** * List of phones. */ phones: Phone[]; } /** * Variables List */ export type VariableList = { /** * Total number of variables documents that matched your query. */ total: number; /** * List of variables. */ variables: Variable[]; } /** * Locale codes list */ export type LocaleCodeList = { /** * Total number of localeCodes documents that matched your query. */ total: number; /** * List of localeCodes. */ localeCodes: LocaleCode[]; } /** * Provider list */ export type ProviderList = { /** * Total number of providers documents that matched your query. */ total: number; /** * List of providers. */ providers: Provider[]; } /** * Message list */ export type MessageList = { /** * Total number of messages documents that matched your query. */ total: number; /** * List of messages. */ messages: Message[]; } /** * Topic list */ export type TopicList = { /** * Total number of topics documents that matched your query. */ total: number; /** * List of topics. */ topics: Topic[]; } /** * Subscriber list */ export type SubscriberList = { /** * Total number of subscribers documents that matched your query. */ total: number; /** * List of subscribers. */ subscribers: Subscriber[]; } /** * Target list */ export type TargetList = { /** * Total number of targets documents that matched your query. */ total: number; /** * List of targets. */ targets: Target[]; } /** * Database */ export type Database = { /** * Database ID. */ $id: string; /** * Database name. */ name: string; /** * Database creation date in ISO 8601 format. */ $createdAt: string; /** * Database update date in ISO 8601 format. */ $updatedAt: string; /** * If database is enabled. Can be &#039;enabled&#039; or &#039;disabled&#039;. When disabled, the database is inaccessible to users, but remains accessible to Server SDKs using API keys. */ enabled: boolean; } /** * Collection */ export type Collection = { /** * Collection ID. */ $id: string; /** * Collection creation date in ISO 8601 format. */ $createdAt: string; /** * Collection update date in ISO 8601 format. */ $updatedAt: string; /** * Collection permissions. [Learn more about permissions](https://appwrite.io/docs/permissions). */ $permissions: string[]; /** * Database ID. */ databaseId: string; /** * Collection name. */ name: string; /** * Collection enabled. Can be &#039;enabled&#039; or &#039;disabled&#039;. When disabled, the collection is inaccessible to users, but remains accessible to Server SDKs using API keys. */ enabled: boolean; /** * Whether document-level permissions are enabled. [Learn more about permissions](https://appwrite.io/docs/permissions). */ documentSecurity: boolean; /** * Collection attributes. */ attributes: string[]; /** * Collection indexes. */ indexes: Index[]; } /** * Attributes List */ export type AttributeList = { /** * Total number of attributes in the given collection. */ total: number; /** * List of attributes. */ attributes: string[]; } /** * AttributeString */ export type AttributeString = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * Attribute size. */ size: number; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: string; } /** * AttributeInteger */ export type AttributeInteger = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * Minimum value to enforce for new documents. */ min?: number; /** * Maximum value to enforce for new documents. */ max?: number; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: number; } /** * AttributeFloat */ export type AttributeFloat = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * Minimum value to enforce for new documents. */ min?: number; /** * Maximum value to enforce for new documents. */ max?: number; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: number; } /** * AttributeBoolean */ export type AttributeBoolean = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: boolean; } /** * AttributeEmail */ export type AttributeEmail = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * String format. */ format: string; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: string; } /** * AttributeEnum */ export type AttributeEnum = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * Array of elements in enumerated type. */ elements: string[]; /** * String format. */ format: string; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: string; } /** * AttributeIP */ export type AttributeIp = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * String format. */ format: string; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: string; } /** * AttributeURL */ export type AttributeUrl = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * String format. */ format: string; /** * Default value for attribute when not provided. Cannot be set when attribute is required. */ xdefault?: string; } /** * AttributeDatetime */ export type AttributeDatetime = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * ISO 8601 format. */ format: string; /** * Default value for attribute when not provided. Only null is optional */ xdefault?: string; } /** * AttributeRelationship */ export type AttributeRelationship = { /** * Attribute Key. */ key: string; /** * Attribute type. */ type: string; /** * Attribute status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an attribute. */ error: string; /** * Is attribute required? */ required: boolean; /** * Is attribute an array? */ array?: boolean; /** * The ID of the related collection. */ relatedCollection: string; /** * The type of the relationship. */ relationType: string; /** * Is the relationship two-way? */ twoWay: boolean; /** * The key of the two-way relationship. */ twoWayKey: string; /** * How deleting the parent document will propagate to child documents. */ onDelete: string; /** * Whether this is the parent or child side of the relationship */ side: string; } /** * Index */ export type Index = { /** * Index Key. */ key: string; /** * Index type. */ type: string; /** * Index status. Possible values: `available`, `processing`, `deleting`, `stuck`, or `failed` */ status: string; /** * Error message. Displays error generated on failure of creating or deleting an index. */ error: string; /** * Index attributes. */ attributes: string[]; /** * Index orders. */ orders?: string[]; } /** * Document */ export type Document = { /** * Document ID. */ $id: string; /** * Collection ID. */ $collectionId: string; /** * Database ID. */ $databaseId: string; /** * Document creation date in ISO 8601 format. */ $createdAt: string; /** * Document update date in ISO 8601 format. */ $updatedAt: string; /** * Document permissions. [Learn more about permissions](https://appwrite.io/docs/permissions). */ $permissions: string[]; } /** * Log */ export type Log = { /** * Event name. */ event: string; /** * User ID. */ userId: string; /** * User Email. */ userEmail: string; /** * User Name. */ userName: string; /** * API mode when event triggered. */ mode: string; /** * IP session in use when the session was created. */ ip: string; /** * Log creation date in ISO 8601 format. */ time: string; /** * Operating system code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/os.json). */ osCode: string; /** * Operating system name. */ osName: string; /** * Operating system version. */ osVersion: string; /** * Client type. */ clientType: string; /** * Client code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/clients.json). */ clientCode: string; /** * Client name. */ clientName: string; /** * Client version. */ clientVersion: string; /** * Client engine name. */ clientEngine: string; /** * Client engine name. */ clientEngineVersion: string; /** * Device name. */ deviceName: string; /** * Device brand name. */ deviceBrand: string; /** * Device model name. */ deviceModel: string; /** * Country two-character ISO 3166-1 alpha code. */ countryCode: string; /** * Country name. */ countryName: string; } /** * User */ export type User<Preferences extends Models.Preferences> = { /** * User ID. */ $id: string; /** * User creation date in ISO 8601 format. */ $createdAt: string; /** * User update date in ISO 8601 format. */ $updatedAt: string; /** * User name. */ name: string; /** * Hashed user password. */ password?: string; /** * Password hashing algorithm. */ hash?: string; /** * Password hashing algorithm configuration. */ hashOptions?: object; /** * User registration date in ISO 8601 format. */ registration: string; /** * User status. Pass `true` for enabled and `false` for disabled. */ status: boolean; /** * Labels for the user. */ labels: string[]; /** * Password update time in ISO 8601 format. */ passwordUpdate: string; /** * User email address. */ email: string; /** * User phone number in E.164 format. */ phone: string; /** * Email verification status. */ emailVerification: boolean; /** * Phone verification status. */ phoneVerification: boolean; /** * Multi factor authentication status. */ mfa: boolean; /** * User preferences as a key-value object */ prefs: Preferences; /** * A user-owned message receiver. A single user may have multiple e.g. emails, phones, and a browser. Each target is registered with a single provider. */ targets: Target[]; /** * Most recent access date in ISO 8601 format. This attribute is only updated again after 24 hours. */ accessedAt: string; } /** * AlgoMD5 */ export type AlgoMd5 = { /** * Algo type. */ type: string; } /** * AlgoSHA */ export type AlgoSha = { /** * Algo type. */ type: string; } /** * AlgoPHPass */ export type AlgoPhpass = { /** * Algo type. */ type: string; } /** * AlgoBcrypt */ export type AlgoBcrypt = { /** * Algo type. */ type: string; } /** * AlgoScrypt */ export type AlgoScrypt = { /** * Algo type. */ type: string; /** * CPU complexity of computed hash. */ costCpu: number; /** * Memory complexity of computed hash. */ costMemory: number; /** * Parallelization of computed hash. */ costParallel: number; /** * Length used to compute hash. */ length: number; } /** * AlgoScryptModified */ export type AlgoScryptModified = { /** * Algo type. */ type: string; /** * Salt used to compute hash. */ salt: string; /** * Separator used to compute hash. */ saltSeparator: string; /** * Key used to compute hash. */ signerKey: string; } /** * AlgoArgon2 */ export type AlgoArgon2 = { /** * Algo type. */ type: string; /** * Memory used to compute hash. */ memoryCost: number; /** * Amount of time consumed to compute hash */ timeCost: number; /** * Number of threads used to compute hash. */ threads: number; } /** * Preferences */ export type Preferences = { } /** * Session */ export type Session = { /** * Session ID. */ $id: string; /** * Session creation date in ISO 8601 format. */ $createdAt: string; /** * User ID. */ userId: string; /** * Session expiration date in ISO 8601 format. */ expire: string; /** * Session Provider. */ provider: string; /** * Session Provider User ID. */ providerUid: string; /** * Session Provider Access Token. */ providerAccessToken: string; /** * The date of when the access token expires in ISO 8601 format. */ providerAccessTokenExpiry: string; /** * Session Provider Refresh Token. */ providerRefreshToken: string; /** * IP in use when the session was created. */ ip: string; /** * Operating system code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/os.json). */ osCode: string; /** * Operating system name. */ osName: string; /** * Operating system version. */ osVersion: string; /** * Client type. */ clientType: string; /** * Client code name. View list of [available options](https://github.com/appwrite/appwrite/blob/master/docs/lists/clients.json). */ clientCode: string; /** * Client name. */ clientName: string; /** * Client version. */ clientVersion: string; /** * Client engine name. */ clientEngine: string; /** * Client engine name. */ clientEngineVersion: string; /** * Device name. */ deviceName: string; /** * Device brand name. */ deviceBrand: string; /** * Device model name. */ deviceModel: string; /** * Country two-character ISO 3166-1 alpha code. */ countryCode: string; /** * Country name. */ countryName: string; /** * Returns true if this the current user session. */ current: boolean; /** * Returns a list of active session factors. */ factors: string[]; /** * Secret used to authenticate the user. Only included if the request was made with an API key */ secret: string; /** * Most recent date in ISO 8601 format when the session successfully passed MFA challenge. */ mfaUpdatedAt: string; } /** * Identity */ export type Identity = { /** * Identity ID. */ $id: string; /** * Identity creation date in ISO 8601 format. */ $createdAt: string; /** * Identity update date in ISO 8601 format. */ $updatedAt: string; /** * User ID. */ userId: string; /** * Identity Provider. */ provider: string; /** * ID of the User in the Identity Provider. */ providerUid: string; /** * Email of the User in the Identity Provider. */ providerEmail: string; /** * Identity Provider Access Token. */ providerAccessToken: string; /** * The date of when the access token expires in ISO 8601 format. */ providerAccessTokenExpiry: string; /** * Identity Provider Refresh Token. */ providerRefreshToken: string; } /** * Token */ export type Token = { /** * Token ID. */ $id: string; /** * Token creation date in ISO 8601 format. */ $createdAt: string; /** * User ID. */ userId: string; /** * Token secret key. This will return an empty string unless the response is returned using an API key or as part of a webhook payload. */ secret: string; /** * Token expiration date in ISO 8601 format. */ expire: string; /** * Security phrase of a token. Empty if security phrase was not requested when creating a token. It includes randomly generated phrase which is also sent in the external resource such as email. */ phrase: string; } /** * JWT */ export type Jwt = { /** * JWT encoded string. */ jwt: string; } /** * Locale */ export type Locale = { /** * User IP address. */ ip: string; /** * Country code in [ISO 3166-1](http://en.wikipedia.org/wiki/ISO_3166-1) two-character format */ countryCode: string; /** * Country name. This field support localization. */ country: string; /** * Continent code. A two character continent code &quot;AF&quot; for Africa, &quot;AN&quot; for Antarctica, &quot;AS&quot; for Asia, &quot;EU&quot; for Europe, &quot;NA&quot; for North America, &quot;OC&quot; for Oceania, and &quot;SA&quot; for South America. */ continentCode: string; /** * Continent name. This field support localization. */ continent: string; /** * True if country is part of the European Union. */ eu: boolean; /** * Currency code in [ISO 4217-1](http://en.wikipedia.org/wiki/ISO_4217) three-character format */ currency: string; } /** * LocaleCode */ export type LocaleCode = { /** * Locale codes in [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) */ code: string; /** * Locale name */ name: string; } /** * File */ export type File = { /** * File ID. */ $id: string; /** * Bucket ID. */ bucketId: string; /** * File creation date in ISO 8601 format. */ $createdAt: string; /** * File update date in ISO 8601 format. */ $updatedAt: string; /** * File permissions. [Learn more about permissions](https://appwrite.io/docs/permissions). */ $permissions: string[]; /** * File name. */ name: string; /** * File MD5 signature. */ signature: string; /** * File mime type. */ mimeType: string; /** * File original size in bytes. */ sizeOriginal: number; /** * Total number of chunks available */ chunksTotal: number; /** * Total number of chunks uploaded */ chunksUploaded: number; } /** * Bucket */ export type Bucket = { /** * Bucket ID. */ $id: string; /** * Bucket creation time in ISO 8601 format. */ $createdAt: string; /** * Bucket update date in ISO 8601 format. */ $updatedAt: string; /** * Bucket permissions. [Learn more about permissions](https://appwrite.io/docs/permissions). */ $permissions: string[]; /** * Whether file-level security is enabled. [Learn more about permissions](https://appwrite.io/docs/permissions). */ fileSecurity: boolean; /** * Bucket name. */ name: string; /** * Bucket enabled. */ enabled: boolean; /** * Maximum file size supported. */ maximumFileSize: number; /** * Allowed file extensions. */ allowedFileExtensions: string[]; /** * Compression algorithm choosen for compression. Will be one of none, [gzip](https://en.wikipedia.org/wiki/Gzip), or [zstd](https://en.wikipedia.org/wiki/Zstd). */ compression: string; /** * Bucket is encrypted. */ encryption: boolean; /** * Virus scanning is enabled. */ antivirus: boolean; } /** * Team */ export type Team<Preferences extends Models.Preferences> = { /** * Team ID. */ $id: string; /** * Team creation date in ISO 8601 format. */ $createdAt: string; /** * Team update date in ISO 8601 format. */ $updatedAt: string; /** * Team name. */ name: string; /** * Total number of team members. */ total: number; /** * Team preferences as a key-value object */ prefs: Preferences; } /** * Membership */ export type Membership = { /** * Membership ID. */ $id: string; /** * Membership creation date in ISO 8601 format. */ $createdAt: string; /** * Membership update date in ISO 8601 format. */ $updatedAt: string; /** * User ID. */ userId: string; /** * User name. */ userName: string; /** * User email address. */ userEmail: string; /** * Team ID. */ teamId: string; /** * Team name. */ teamName: string; /** * Date, the user has been invited to join the team in ISO 8601 format. */ invited: string; /** * Date, the user has accepted the invitation to join the team in ISO 8601 format. */ joined: string; /** * User confirmation status, true if the user has joined the team or false otherwise. */ confirm: boolean; /** * Multi factor authentication status, true if the user has MFA enabled or false otherwise. */ mfa: boolean; /** * User list of roles */ roles: string[]; } /** * Function */ export type Function = { /** * Function ID. */ $id: string; /** * Function creation date in ISO 8601 format. */ $createdAt: string; /** * Function update date in ISO 8601 format. */ $updatedAt: string; /** * Execution permissions. */ execute: string[]; /** * Function name. */ name: string; /** * Function enabled. */ enabled: boolean; /** * Is the function deployed with the latest configuration? This is set to false if you&#039;ve changed an environment variables, entrypoint, commands, or other settings that needs redeploy to be applied. When the value is false, redeploy the function to update it with the latest configuration. */ live: boolean; /** * Whether executions will be logged. When set to false, executions will not be logged, but will reduce resource used by your Appwrite project. */ logging: boolean; /** * Function execution runtime. */ runtime: string; /** * Function&#039;s active deployment ID. */ deployment: string; /** * Function variables. */ vars: Variable[]; /** * Function trigger events. */ events: string[]; /** * Function execution schedult in CRON format. */ schedule: string; /** * Function execution timeout in seconds. */ timeout: number; /** * The entrypoint file used to execute the deployment. */ entrypoint: string; /** * The build command used to build the deployment. */ commands: string; /** * Version of Open Runtimes used for the function. */ version: string; /** * Function VCS (Version Control System) installation id. */ installationId: string; /** * VCS (Version Control System) Repository ID */ providerRepositoryId: string; /** * VCS (Version Control System) branch name */ providerBranch: string; /** * Path to function in VCS (Version Control System) repository */ providerRootDirectory: string; /** * Is VCS (Version Control System) connection is in silent mode? When in silence mode, no comments will be posted on the repository pull or merge requests */ providerSilentMode: boolean; } /** * Runtime */ export type Runtime = { /** * Runtime ID. */ $id: string; /** * Runtime Name. */ name: string; /** * Runtime version. */ version: string; /** * Base Docker image used to build the runtime. */ base: string; /** * Image name of Docker Hub. */ image: string; /** * Name of the logo image. */ logo: string; /** * List of supported architectures. */ supports: string[]; } /** * Deployment */ export type Deployment = { /** * Deployment ID. */ $id: string; /** * Deployment creation date in ISO 8601 format. */ $createdAt: string; /** * Deployment update date in ISO 8601 format. */ $updatedAt: string; /** * Type of deployment. */ type: string; /** * Resource ID. */ resourceId: string; /** * Resource type. */ resourceType: string; /** * The entrypoint file to use to execute the deployment code. */ entrypoint: string; /** * The code size in bytes. */ size: number; /** * The current build ID. */ buildId: string; /** * Whether the deployment should be automatically activated. */ activate: boolean; /** * The deployment status. Possible values are &quot;processing&quot;, &quot;building&quot;, &quot;waiting&quot;, &quot;ready&quot;, and &quot;failed&quot;. */ status: string; /** * The build logs. */ buildLogs: string; /** * The current build time in seconds. */ buildTime: number; /** * The name of the vcs provider repository */ providerRepositoryName: string; /** * The name of the vcs provider repository owner */ providerRepositoryOwner: string; /** * The url of the vcs provider repository */ providerRepositoryUrl: string; /** * The branch of the vcs repository */ providerBranch: string; /** * The commit hash of the vcs commit */ providerCommitHash: string; /** * The url of vcs commit author */ providerCommitAuthorUrl: string; /** * The name of vcs commit author */ providerCommitAuthor: string; /** * The commit message */ providerCommitMessage: string; /** * The url of the vcs commit */ providerCommitUrl: string; /** * The branch of the vcs repository */ providerBranchUrl: string; } /** * Execution */ export type Execution = { /** * Execution ID. */ $id: string; /** * Execution creation date in ISO 8601 format. */ $createdAt: string; /** * Execution upate date in ISO 8601 format. */ $updatedAt: string; /** * Execution roles. */ $permissions: string[]; /** * Function ID. */ functionId: string; /** * The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`. */ trigger: string; /** * The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`. */ status: string; /** * HTTP request method type. */ requestMethod: string; /** * HTTP request path and query. */ requestPath: string; /** * HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous. */ requestHeaders: Headers[]; /** * HTTP response status code. */ responseStatusCode: number; /** * HTTP response body. This will return empty unless execution is created as synchronous. */ responseBody: string; /** * HTTP response headers as a key-value object. This will return only whitelisted headers. All headers are returned if execution is created as synchronous. */ responseHeaders: Headers[]; /** * Function logs. Includes the last 4,000 characters. This will return an empty string unless the response is returned using an API key or as part of a webhook payload. */ logs: string; /** * Function errors. Includes the last 4,000 characters. This will return an empty string unless the response is returned using an API key or as part of a webhook payload. */ errors: string; /** * Function execution duration in seconds. */ duration: number; } /** * Variable */ export type Variable = { /** * Variable ID. */ $id: string; /** * Variable creation date in ISO 8601 format. */ $createdAt: string; /** * Variable creation date in ISO 8601 format. */ $updatedAt: string; /** * Variable key. */ key: string; /** * Variable value. */ value: string; /** * Service to which the variable belongs. Possible values are &quot;project&quot;, &quot;function&quot; */ resourceType: string; /** * ID of resource to which the variable belongs. If resourceType is &quot;project&quot;, it is empty. If resourceType