UNPKG

@linode/api-v4

Version:
134 lines 4.3 kB
export declare const streamStatus: { readonly Active: "active"; readonly Inactive: "inactive"; readonly Provisioning: "provisioning"; }; export type StreamStatus = (typeof streamStatus)[keyof typeof streamStatus]; export declare const streamType: { readonly AuditLogs: "audit_logs"; readonly LKEAuditLogs: "lke_audit_logs"; }; export type StreamType = (typeof streamType)[keyof typeof streamType]; export interface AuditData { created: string; created_by: string; updated: string; updated_by: string; } export interface Stream extends AuditData { destinations: DestinationCore[]; details: StreamDetailsType; id: number; label: string; status: StreamStatus; type: StreamType; version: string; } export interface StreamDetails { cluster_ids?: number[]; is_auto_add_all_clusters_enabled?: boolean; } export type StreamDetailsType = null | StreamDetails; export declare const destinationType: { readonly CustomHttps: "custom_https"; readonly AkamaiObjectStorage: "akamai_object_storage"; }; export type DestinationType = (typeof destinationType)[keyof typeof destinationType]; export interface DestinationCore { details: DestinationDetails; id: number; label: string; type: DestinationType; } export interface Destination extends DestinationCore, AuditData { version: string; } export type DestinationDetails = AkamaiObjectStorageDetails | CustomHTTPSDetails; export interface AkamaiObjectStorageDetails { access_key_id: string; bucket_name: string; host: string; path: string; } export interface AkamaiObjectStorageDetailsExtended extends AkamaiObjectStorageDetails { access_key_secret: string; } export declare const contentType: { readonly Json: "application/json"; readonly JsonUtf8: "application/json; charset=utf-8"; }; export type ContentType = (typeof contentType)[keyof typeof contentType] | null; export declare const dataCompressionType: { readonly Gzip: "gzip"; readonly None: "None"; }; export type DataCompressionType = (typeof dataCompressionType)[keyof typeof dataCompressionType]; export interface CustomHTTPSDetails { authentication: Authentication; client_certificate_details?: ClientCertificateDetails; content_type?: ContentType; custom_headers?: CustomHeader[]; data_compression: DataCompressionType; endpoint_url: string; } export interface CustomHTTPSDetailsExtended extends CustomHTTPSDetails { authentication: Authentication & { details?: AuthenticationDetailsExtended; }; } interface ClientCertificateDetails { client_ca_certificate?: string; client_certificate?: string; client_private_key?: string; tls_hostname?: string; } export declare const authenticationType: { readonly Basic: "basic"; readonly None: "none"; }; export type AuthenticationType = (typeof authenticationType)[keyof typeof authenticationType]; interface Authentication { details?: AuthenticationDetails; type: AuthenticationType; } interface AuthenticationDetails { basic_authentication_user: string; } interface AuthenticationDetailsExtended extends AuthenticationDetails { basic_authentication_password: string; } export interface CustomHeader { name: string; value: string; } export interface CreateStreamPayload { destinations: number[]; details?: StreamDetailsType; label: string; status?: StreamStatus; type: StreamType; } export interface UpdateStreamPayload { destinations: number[]; details?: StreamDetailsType; label: string; status: StreamStatus; } export interface UpdateStreamPayloadWithId extends UpdateStreamPayload { id: number; } export interface AkamaiObjectStorageDetailsPayload extends Omit<AkamaiObjectStorageDetailsExtended, 'path'> { path?: string; } export type DestinationDetailsPayload = AkamaiObjectStorageDetailsPayload | CustomHTTPSDetailsExtended; export interface CreateDestinationPayload { details: DestinationDetailsPayload; label: string; type: DestinationType; } export type UpdateDestinationPayload = Omit<CreateDestinationPayload, 'type'>; export interface UpdateDestinationPayloadWithId extends UpdateDestinationPayload { id: number; } export {}; //# sourceMappingURL=types.d.ts.map