coder/site/src/api/typesGenerated.ts

2499 lines
64 KiB
TypeScript
Raw Normal View History

// Code generated by 'make site/src/api/typesGenerated.ts'. DO NOT EDIT.
// The code below is generated from codersdk.
// From codersdk/templates.go
export interface ACLAvailable {
readonly users: User[];
readonly groups: Group[];
}
2022-10-06 19:02:27 +00:00
// From codersdk/apikey.go
export interface APIKey {
readonly id: string;
readonly user_id: string;
readonly last_used: string;
readonly expires_at: string;
readonly created_at: string;
readonly updated_at: string;
readonly login_type: LoginType;
readonly scope: APIKeyScope;
readonly token_name: string;
readonly lifetime_seconds: number;
}
// From codersdk/apikey.go
export interface APIKeyWithOwner extends APIKey {
readonly username: string;
}
// From codersdk/licenses.go
export interface AddLicenseRequest {
readonly license: string;
}
// From codersdk/templates.go
export interface AgentStatsReportResponse {
readonly num_comms: number;
readonly rx_bytes: number;
readonly tx_bytes: number;
}
// From codersdk/deployment.go
export interface AppHostResponse {
readonly host: string;
}
// From codersdk/deployment.go
export interface AppearanceConfig {
readonly application_name: string;
readonly logo_url: string;
readonly service_banner: ServiceBannerConfig;
readonly support_links?: LinkConfig[];
}
// From codersdk/templates.go
export interface ArchiveTemplateVersionsRequest {
readonly all: boolean;
}
// From codersdk/templates.go
export interface ArchiveTemplateVersionsResponse {
readonly template_id: string;
readonly archived_ids: string[];
}
// From codersdk/roles.go
export interface AssignableRoles extends Role {
readonly assignable: boolean;
}
// From codersdk/audit.go
export type AuditDiff = Record<string, AuditDiffField>;
// From codersdk/audit.go
export interface AuditDiffField {
// Empty interface{} type, cannot resolve the type.
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- interface{}
readonly old?: any;
// Empty interface{} type, cannot resolve the type.
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- interface{}
readonly new?: any;
readonly secret: boolean;
}
// From codersdk/audit.go
export interface AuditLog {
readonly id: string;
readonly request_id: string;
readonly time: string;
readonly organization_id: string;
// Named type "net/netip.Addr" unknown, using "any"
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- External type
readonly ip: any;
readonly user_agent: string;
readonly resource_type: ResourceType;
readonly resource_id: string;
readonly resource_target: string;
readonly resource_icon: string;
readonly action: AuditAction;
readonly diff: AuditDiff;
readonly status_code: number;
readonly additional_fields: Record<string, string>;
readonly description: string;
readonly resource_link: string;
readonly is_deleted: boolean;
readonly user?: User;
}
2022-09-07 16:38:19 +00:00
// From codersdk/audit.go
export interface AuditLogResponse {
readonly audit_logs: AuditLog[];
readonly count: number;
2022-09-07 16:38:19 +00:00
}
// From codersdk/audit.go
export interface AuditLogsRequest extends Pagination {
readonly q?: string;
}
// From codersdk/users.go
export interface AuthMethod {
readonly enabled: boolean;
}
// From codersdk/users.go
export interface AuthMethods {
readonly password: AuthMethod;
readonly github: AuthMethod;
readonly oidc: OIDCAuthMethod;
}
// From codersdk/authorization.go
export interface AuthorizationCheck {
readonly object: AuthorizationObject;
readonly action: string;
}
// From codersdk/authorization.go
export interface AuthorizationObject {
readonly resource_type: RBACResource;
readonly owner_id?: string;
readonly organization_id?: string;
readonly resource_id?: string;
}
// From codersdk/authorization.go
export interface AuthorizationRequest {
readonly checks: Record<string, AuthorizationCheck>;
}
// From codersdk/authorization.go
export type AuthorizationResponse = Record<string, boolean>;
// From codersdk/deployment.go
export interface AvailableExperiments {
readonly safe: Experiment[];
}
// From codersdk/deployment.go
export interface BuildInfoResponse {
readonly external_url: string;
readonly version: string;
readonly dashboard_url: string;
readonly workspace_proxy: boolean;
readonly agent_api_version: string;
readonly upgrade_message: string;
}
// From codersdk/insights.go
export interface ConnectionLatency {
readonly p50: number;
readonly p95: number;
}
// From codersdk/users.go
export interface ConvertLoginRequest {
readonly to_type: LoginType;
readonly password: string;
}
// From codersdk/users.go
export interface CreateFirstUserRequest {
readonly email: string;
readonly username: string;
readonly password: string;
readonly trial: boolean;
readonly trial_info: CreateFirstUserTrialInfo;
}
// From codersdk/users.go
export interface CreateFirstUserResponse {
readonly user_id: string;
readonly organization_id: string;
}
// From codersdk/users.go
export interface CreateFirstUserTrialInfo {
readonly first_name: string;
readonly last_name: string;
readonly phone_number: string;
readonly job_title: string;
readonly company_name: string;
readonly country: string;
readonly developers: string;
}
2022-10-10 20:37:06 +00:00
// From codersdk/groups.go
export interface CreateGroupRequest {
readonly name: string;
readonly display_name: string;
readonly avatar_url: string;
readonly quota_allowance: number;
2022-10-10 20:37:06 +00:00
}
// From codersdk/users.go
export interface CreateOrganizationRequest {
readonly name: string;
}
// From codersdk/organizations.go
export interface CreateTemplateRequest {
readonly name: string;
readonly display_name?: string;
readonly description?: string;
readonly icon?: string;
readonly template_version_id: string;
readonly default_ttl_ms?: number;
readonly activity_bump_ms?: number;
readonly max_ttl_ms?: number;
readonly autostop_requirement?: TemplateAutostopRequirement;
readonly autostart_requirement?: TemplateAutostartRequirement;
readonly allow_user_cancel_workspace_jobs?: boolean;
readonly allow_user_autostart?: boolean;
readonly allow_user_autostop?: boolean;
readonly failure_ttl_ms?: number;
readonly dormant_ttl_ms?: number;
readonly delete_ttl_ms?: number;
readonly disable_everyone_group_access: boolean;
readonly require_active_version: boolean;
}
// From codersdk/templateversions.go
export interface CreateTemplateVersionDryRunRequest {
readonly workspace_name: string;
readonly rich_parameter_values: WorkspaceBuildParameter[];
readonly user_variable_values?: VariableValue[];
}
// From codersdk/organizations.go
export interface CreateTemplateVersionRequest {
readonly name?: string;
readonly message?: string;
readonly template_id?: string;
readonly storage_method: ProvisionerStorageMethod;
readonly file_id?: string;
readonly example_id?: string;
readonly provisioner: ProvisionerType;
readonly tags: Record<string, string>;
readonly user_variable_values?: VariableValue[];
}
// From codersdk/audit.go
export interface CreateTestAuditLogRequest {
readonly action?: AuditAction;
readonly resource_type?: ResourceType;
readonly resource_id?: string;
readonly additional_fields?: Record<string, string>;
readonly time?: string;
readonly build_reason?: BuildReason;
}
// From codersdk/apikey.go
export interface CreateTokenRequest {
readonly lifetime: number;
readonly scope: APIKeyScope;
readonly token_name: string;
}
// From codersdk/users.go
export interface CreateUserRequest {
readonly email: string;
readonly username: string;
readonly password: string;
readonly login_type: LoginType;
readonly disable_login: boolean;
readonly organization_id: string;
}
// From codersdk/workspaces.go
export interface CreateWorkspaceBuildRequest {
readonly template_version_id?: string;
readonly transition: WorkspaceTransition;
readonly dry_run?: boolean;
readonly state?: string;
readonly orphan?: boolean;
readonly rich_parameter_values?: WorkspaceBuildParameter[];
readonly log_level?: ProvisionerLogLevel;
}
// From codersdk/workspaceproxy.go
export interface CreateWorkspaceProxyRequest {
readonly name: string;
readonly display_name: string;
readonly icon: string;
}
// From codersdk/organizations.go
export interface CreateWorkspaceRequest {
readonly template_id?: string;
readonly template_version_id?: string;
readonly name: string;
readonly autostart_schedule?: string;
readonly ttl_ms?: number;
readonly rich_parameter_values?: WorkspaceBuildParameter[];
readonly automatic_updates?: AutomaticUpdates;
}
// From codersdk/deployment.go
export interface DAUEntry {
readonly date: string;
readonly amount: number;
}
// From codersdk/deployment.go
export interface DAURequest {
readonly TZHourOffset: number;
}
// From codersdk/deployment.go
export interface DAUsResponse {
readonly entries: DAUEntry[];
readonly tz_hour_offset: number;
}
// From codersdk/deployment.go
export interface DERP {
readonly server: DERPServerConfig;
readonly config: DERPConfig;
}
// From codersdk/deployment.go
export interface DERPConfig {
readonly block_direct: boolean;
readonly force_websockets: boolean;
readonly url: string;
readonly path: string;
}
2022-10-03 21:01:13 +00:00
// From codersdk/workspaceagents.go
feat: Add Tailscale networking (#3505) * fix: Add coder user to docker group on installation This makes for a simpler setup, and reduces the likelihood a user runs into a strange issue. * Add wgnet * Add ping * Add listening * Finish refactor to make this work * Add interface for swapping * Fix conncache with interface * chore: update gvisor * fix tailscale types * linting * more linting * Add coordinator * Add coordinator tests * Fix coordination * It compiles! * Move all connection negotiation in-memory * Migrate coordinator to use net.conn * Add closed func * Fix close listener func * Make reconnecting PTY work * Fix reconnecting PTY * Update CI to Go 1.19 * Add CLI flags for DERP mapping * Fix Tailnet test * Rename ConnCoordinator to TailnetCoordinator * Remove print statement from workspace agent test * Refactor wsconncache to use tailnet * Remove STUN from unit tests * Add migrate back to dump * chore: Upgrade to Go 1.19 This is required as part of #3505. * Fix reconnecting PTY tests * fix: update wireguard-go to fix devtunnel * fix migration numbers * linting * Return early for status if endpoints are empty * Update cli/server.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Update cli/server.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Fix frontend entites * Fix agent bicopy * Fix race condition for the last node * Fix down migration * Fix connection RBAC * Fix migration numbers * Fix forwarding TCP to a local port * Implement ping for tailnet * Rename to ForceHTTP * Add external derpmapping * Expose DERP region names to the API * Add global option to enable Tailscale networking for web * Mark DERP flags hidden while testing * Update DERP map on reconnect * Add close func to workspace agents * Fix race condition in upstream dependency * Fix feature columns race condition Co-authored-by: Colin Adler <colin1adler@gmail.com>
2022-09-01 01:09:44 +00:00
export interface DERPRegion {
readonly preferred: boolean;
readonly latency_ms: number;
feat: Add Tailscale networking (#3505) * fix: Add coder user to docker group on installation This makes for a simpler setup, and reduces the likelihood a user runs into a strange issue. * Add wgnet * Add ping * Add listening * Finish refactor to make this work * Add interface for swapping * Fix conncache with interface * chore: update gvisor * fix tailscale types * linting * more linting * Add coordinator * Add coordinator tests * Fix coordination * It compiles! * Move all connection negotiation in-memory * Migrate coordinator to use net.conn * Add closed func * Fix close listener func * Make reconnecting PTY work * Fix reconnecting PTY * Update CI to Go 1.19 * Add CLI flags for DERP mapping * Fix Tailnet test * Rename ConnCoordinator to TailnetCoordinator * Remove print statement from workspace agent test * Refactor wsconncache to use tailnet * Remove STUN from unit tests * Add migrate back to dump * chore: Upgrade to Go 1.19 This is required as part of #3505. * Fix reconnecting PTY tests * fix: update wireguard-go to fix devtunnel * fix migration numbers * linting * Return early for status if endpoints are empty * Update cli/server.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Update cli/server.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Fix frontend entites * Fix agent bicopy * Fix race condition for the last node * Fix down migration * Fix connection RBAC * Fix migration numbers * Fix forwarding TCP to a local port * Implement ping for tailnet * Rename to ForceHTTP * Add external derpmapping * Expose DERP region names to the API * Add global option to enable Tailscale networking for web * Mark DERP flags hidden while testing * Update DERP map on reconnect * Add close func to workspace agents * Fix race condition in upstream dependency * Fix feature columns race condition Co-authored-by: Colin Adler <colin1adler@gmail.com>
2022-09-01 01:09:44 +00:00
}
// From codersdk/deployment.go
export interface DERPServerConfig {
readonly enable: boolean;
readonly region_id: number;
readonly region_code: string;
readonly region_name: string;
readonly stun_addresses: string[];
readonly relay_url: string;
}
// From codersdk/deployment.go
export interface DangerousConfig {
readonly allow_path_app_sharing: boolean;
readonly allow_path_app_site_owner_access: boolean;
readonly allow_all_cors: boolean;
}
// From codersdk/workspaceagentportshare.go
export interface DeleteWorkspaceAgentPortShareRequest {
readonly agent_name: string;
readonly port: number;
}
// From codersdk/deployment.go
export interface DeploymentConfig {
readonly config?: DeploymentValues;
readonly options?: ClibaseOptionSet;
}
// From codersdk/deployment.go
export interface DeploymentStats {
readonly aggregated_from: string;
readonly collected_at: string;
readonly next_update_at: string;
readonly workspaces: WorkspaceDeploymentStats;
readonly session_count: SessionCountDeploymentStats;
}
// From codersdk/deployment.go
export interface DeploymentValues {
readonly verbose?: boolean;
readonly access_url?: string;
readonly wildcard_access_url?: string;
readonly docs_url?: string;
readonly redirect_to_access_url?: boolean;
readonly http_address?: string;
readonly autobuild_poll_interval?: number;
readonly job_hang_detector_interval?: number;
readonly derp?: DERP;
readonly prometheus?: PrometheusConfig;
readonly pprof?: PprofConfig;
readonly proxy_trusted_headers?: string[];
readonly proxy_trusted_origins?: string[];
readonly cache_directory?: string;
readonly in_memory_database?: boolean;
readonly pg_connection_url?: string;
readonly oauth2?: OAuth2Config;
readonly oidc?: OIDCConfig;
readonly telemetry?: TelemetryConfig;
readonly tls?: TLSConfig;
readonly trace?: TraceConfig;
readonly secure_auth_cookie?: boolean;
readonly strict_transport_security?: number;
readonly strict_transport_security_options?: string[];
readonly ssh_keygen_algorithm?: string;
readonly metrics_cache_refresh_interval?: number;
readonly agent_stat_refresh_interval?: number;
readonly agent_fallback_troubleshooting_url?: string;
readonly browser_only?: boolean;
readonly scim_api_key?: string;
readonly external_token_encryption_keys?: string[];
readonly provisioner?: ProvisionerConfig;
readonly rate_limit?: RateLimitConfig;
readonly experiments?: string[];
readonly update_check?: boolean;
readonly max_token_lifetime?: number;
readonly swagger?: SwaggerConfig;
readonly logging?: LoggingConfig;
readonly dangerous?: DangerousConfig;
readonly disable_path_apps?: boolean;
readonly max_session_expiry?: number;
readonly disable_session_expiry_refresh?: boolean;
readonly disable_password_auth?: boolean;
readonly support?: SupportConfig;
readonly external_auth?: ExternalAuthConfig[];
readonly config_ssh?: SSHConfig;
readonly wgtunnel_host?: string;
readonly disable_owner_workspace_exec?: boolean;
readonly proxy_health_status_interval?: number;
readonly enable_terraform_debug_mode?: boolean;
readonly user_quiet_hours_schedule?: UserQuietHoursScheduleConfig;
readonly web_terminal_renderer?: string;
readonly allow_workspace_renames?: boolean;
readonly healthcheck?: HealthcheckConfig;
readonly cli_upgrade_message?: string;
readonly config?: string;
readonly write_config?: boolean;
readonly address?: string;
}
// From codersdk/deployment.go
export interface Entitlements {
readonly features: Record<FeatureName, Feature>;
readonly warnings: string[];
readonly errors: string[];
readonly has_license: boolean;
readonly trial: boolean;
readonly require_telemetry: boolean;
readonly refreshed_at: string;
}
// From codersdk/deployment.go
export type Experiments = Experiment[];
// From codersdk/externalauth.go
export interface ExternalAuth {
readonly authenticated: boolean;
readonly device: boolean;
readonly display_name: string;
readonly user?: ExternalAuthUser;
readonly app_installable: boolean;
readonly installations: ExternalAuthAppInstallation[];
readonly app_install_url: string;
}
// From codersdk/externalauth.go
export interface ExternalAuthAppInstallation {
readonly id: number;
readonly account: ExternalAuthUser;
readonly configure_url: string;
}
// From codersdk/deployment.go
export interface ExternalAuthConfig {
readonly type: string;
readonly client_id: string;
readonly id: string;
readonly auth_url: string;
readonly token_url: string;
readonly validate_url: string;
readonly app_install_url: string;
readonly app_installations_url: string;
readonly no_refresh: boolean;
readonly scopes: string[];
readonly extra_token_keys: string[];
readonly device_flow: boolean;
readonly device_code_url: string;
readonly regex: string;
readonly display_name: string;
readonly display_icon: string;
}
// From codersdk/externalauth.go
export interface ExternalAuthDevice {
readonly device_code: string;
readonly user_code: string;
readonly verification_uri: string;
readonly expires_in: number;
readonly interval: number;
}
// From codersdk/externalauth.go
export interface ExternalAuthDeviceExchange {
readonly device_code: string;
}
// From codersdk/externalauth.go
export interface ExternalAuthLink {
readonly provider_id: string;
readonly created_at: string;
readonly updated_at: string;
readonly has_refresh_token: boolean;
readonly expires: string;
readonly authenticated: boolean;
readonly validate_error: string;
}
// From codersdk/externalauth.go
export interface ExternalAuthLinkProvider {
readonly id: string;
readonly type: string;
readonly device: boolean;
readonly display_name: string;
readonly display_icon: string;
readonly allow_refresh: boolean;
readonly allow_validate: boolean;
}
// From codersdk/externalauth.go
export interface ExternalAuthUser {
readonly login: string;
readonly avatar_url: string;
readonly profile_url: string;
readonly name: string;
}
// From codersdk/deployment.go
export interface Feature {
readonly entitlement: Entitlement;
readonly enabled: boolean;
readonly limit?: number;
readonly actual?: number;
}
// From codersdk/apikey.go
export interface GenerateAPIKeyResponse {
readonly key: string;
}
// From codersdk/users.go
export interface GetUsersResponse {
readonly users: User[];
readonly count: number;
}
// From codersdk/gitsshkey.go
export interface GitSSHKey {
readonly user_id: string;
readonly created_at: string;
readonly updated_at: string;
readonly public_key: string;
}
2022-10-10 20:37:06 +00:00
// From codersdk/groups.go
export interface Group {
readonly id: string;
readonly name: string;
readonly display_name: string;
readonly organization_id: string;
readonly members: User[];
readonly avatar_url: string;
readonly quota_allowance: number;
readonly source: GroupSource;
2022-10-10 20:37:06 +00:00
}
// From codersdk/health.go
export interface HealthSettings {
readonly dismissed_healthchecks: HealthSection[];
}
// From codersdk/workspaceapps.go
export interface Healthcheck {
readonly url: string;
readonly interval: number;
readonly threshold: number;
}
// From codersdk/deployment.go
export interface HealthcheckConfig {
readonly refresh: number;
readonly threshold_database: number;
}
// From codersdk/workspaceagents.go
export interface IssueReconnectingPTYSignedTokenRequest {
readonly url: string;
readonly agentID: string;
}
// From codersdk/workspaceagents.go
export interface IssueReconnectingPTYSignedTokenResponse {
readonly signed_token: string;
}
// From codersdk/jfrog.go
export interface JFrogXrayScan {
readonly workspace_id: string;
readonly agent_id: string;
readonly critical: number;
readonly high: number;
readonly medium: number;
readonly results_url: string;
}
// From codersdk/licenses.go
export interface License {
readonly id: number;
readonly uuid: string;
readonly uploaded_at: string;
// Empty interface{} type, cannot resolve the type.
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- interface{}
readonly claims: Record<string, any>;
}
// From codersdk/deployment.go
export interface LinkConfig {
readonly name: string;
readonly target: string;
readonly icon: string;
}
// From codersdk/externalauth.go
export interface ListUserExternalAuthResponse {
readonly providers: ExternalAuthLinkProvider[];
readonly links: ExternalAuthLink[];
}
// From codersdk/deployment.go
export interface LoggingConfig {
readonly log_filter: string[];
readonly human: string;
readonly json: string;
readonly stackdriver: string;
}
// From codersdk/users.go
export interface LoginWithPasswordRequest {
readonly email: string;
readonly password: string;
}
// From codersdk/users.go
export interface LoginWithPasswordResponse {
readonly session_token: string;
}
// From codersdk/users.go
export interface MinimalUser {
readonly id: string;
readonly username: string;
readonly avatar_url: string;
}
// From codersdk/oauth2.go
export interface OAuth2AppEndpoints {
readonly authorization: string;
readonly token: string;
readonly device_authorization: string;
}
// From codersdk/deployment.go
export interface OAuth2Config {
readonly github: OAuth2GithubConfig;
}
// From codersdk/deployment.go
export interface OAuth2GithubConfig {
readonly client_id: string;
readonly client_secret: string;
readonly allowed_orgs: string[];
readonly allowed_teams: string[];
readonly allow_signups: boolean;
readonly allow_everyone: boolean;
readonly enterprise_base_url: string;
}
// From codersdk/oauth2.go
export interface OAuth2ProviderApp {
readonly id: string;
readonly name: string;
readonly callback_url: string;
readonly icon: string;
readonly endpoints: OAuth2AppEndpoints;
}
// From codersdk/oauth2.go
export interface OAuth2ProviderAppSecret {
readonly id: string;
readonly last_used_at?: string;
readonly client_secret_truncated: string;
}
// From codersdk/oauth2.go
export interface OAuth2ProviderAppSecretFull {
readonly id: string;
readonly client_secret_full: string;
}
// From codersdk/users.go
export interface OAuthConversionResponse {
readonly state_string: string;
readonly expires_at: string;
readonly to_type: LoginType;
readonly user_id: string;
}
// From codersdk/users.go
export interface OIDCAuthMethod extends AuthMethod {
readonly signInText: string;
readonly iconUrl: string;
}
// From codersdk/deployment.go
export interface OIDCConfig {
readonly allow_signups: boolean;
readonly client_id: string;
readonly client_secret: string;
readonly client_key_file: string;
readonly client_cert_file: string;
readonly email_domain: string[];
readonly issuer_url: string;
readonly scopes: string[];
readonly ignore_email_verified: boolean;
readonly username_field: string;
readonly email_field: string;
readonly auth_url_params: Record<string, string>;
readonly ignore_user_info: boolean;
readonly group_auto_create: boolean;
readonly group_regex_filter: string;
readonly group_allow_list: string[];
readonly groups_field: string;
readonly group_mapping: Record<string, string>;
readonly user_role_field: string;
readonly user_role_mapping: Record<string, string[]>;
readonly user_roles_default: string[];
readonly sign_in_text: string;
readonly icon_url: string;
readonly signups_disabled_text: string;
}
// From codersdk/organizations.go
export interface Organization {
readonly id: string;
readonly name: string;
readonly created_at: string;
readonly updated_at: string;
}
// From codersdk/organizations.go
export interface OrganizationMember {
readonly user_id: string;
readonly organization_id: string;
readonly created_at: string;
readonly updated_at: string;
readonly roles: Role[];
}
// From codersdk/pagination.go
export interface Pagination {
readonly after_id?: string;
readonly limit?: number;
readonly offset?: number;
}
2022-10-10 20:37:06 +00:00
// From codersdk/groups.go
export interface PatchGroupRequest {
readonly add_users: string[];
readonly remove_users: string[];
readonly name: string;
readonly display_name?: string;
readonly avatar_url?: string;
readonly quota_allowance?: number;
2022-10-10 20:37:06 +00:00
}
// From codersdk/templateversions.go
export interface PatchTemplateVersionRequest {
readonly name: string;
readonly message?: string;
}
// From codersdk/workspaceproxy.go
export interface PatchWorkspaceProxy {
readonly id: string;
readonly name: string;
readonly display_name: string;
readonly icon: string;
readonly regenerate_token: boolean;
}
// From codersdk/oauth2.go
export interface PostOAuth2ProviderAppRequest {
readonly name: string;
readonly callback_url: string;
readonly icon: string;
}
// From codersdk/deployment.go
export interface PprofConfig {
readonly enable: boolean;
readonly address: string;
}
// From codersdk/deployment.go
export interface PrometheusConfig {
readonly enable: boolean;
readonly address: string;
readonly collect_agent_stats: boolean;
readonly collect_db_metrics: boolean;
}
// From codersdk/deployment.go
export interface ProvisionerConfig {
readonly daemons: number;
readonly daemons_echo: boolean;
readonly daemon_poll_interval: number;
readonly daemon_poll_jitter: number;
readonly force_cancel_interval: number;
readonly daemon_psk: string;
}
// From codersdk/provisionerdaemons.go
export interface ProvisionerDaemon {
readonly id: string;
readonly created_at: string;
readonly last_seen_at?: string;
readonly name: string;
readonly version: string;
readonly api_version: string;
readonly provisioners: ProvisionerType[];
readonly tags: Record<string, string>;
}
// From codersdk/provisionerdaemons.go
export interface ProvisionerJob {
readonly id: string;
readonly created_at: string;
readonly started_at?: string;
readonly completed_at?: string;
readonly canceled_at?: string;
readonly error?: string;
readonly error_code?: JobErrorCode;
readonly status: ProvisionerJobStatus;
readonly worker_id?: string;
readonly file_id: string;
readonly tags: Record<string, string>;
readonly queue_position: number;
readonly queue_size: number;
}
// From codersdk/provisionerdaemons.go
export interface ProvisionerJobLog {
readonly id: number;
readonly created_at: string;
readonly log_source: LogSource;
readonly log_level: LogLevel;
readonly stage: string;
readonly output: string;
}
// From codersdk/workspaceproxy.go
export interface ProxyHealthReport {
readonly errors: string[];
readonly warnings: string[];
}
// From codersdk/workspaces.go
export interface PutExtendWorkspaceRequest {
readonly deadline: string;
}
// From codersdk/oauth2.go
export interface PutOAuth2ProviderAppRequest {
readonly name: string;
readonly callback_url: string;
readonly icon: string;
}
// From codersdk/deployment.go
export interface RateLimitConfig {
readonly disable_all: boolean;
readonly api: number;
}
// From codersdk/workspaceproxy.go
export interface Region {
readonly id: string;
readonly name: string;
readonly display_name: string;
readonly icon_url: string;
readonly healthy: boolean;
readonly path_app_url: string;
readonly wildcard_hostname: string;
}
// From codersdk/workspaceproxy.go
export interface RegionsResponse<R extends RegionTypes> {
readonly regions: R[];
}
feat: Add high availability for multiple replicas (#4555) * feat: HA tailnet coordinator * fixup! feat: HA tailnet coordinator * fixup! feat: HA tailnet coordinator * remove printlns * close all connections on coordinator * impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * Add replicas * Add DERP meshing to arbitrary addresses * Move packages to highavailability folder * Move coordinator to high availability package * Add flags for HA * Rename to replicasync * Denest packages for replicas * Add test for multiple replicas * Fix coordination test * Add HA to the helm chart * Rename function pointer * Add warnings for HA * Add the ability to block endpoints * Add flag to disable P2P connections * Wow, I made the tests pass * Add replicas endpoint * Ensure close kills replica * Update sql * Add database latency to high availability * Pipe TLS to DERP mesh * Fix DERP mesh with TLS * Add tests for TLS * Fix replica sync TLS * Fix RootCA for replica meshing * Remove ID from replicasync * Fix getting certificates for meshing * Remove excessive locking * Fix linting * Store mesh key in the database * Fix replica key for tests * Fix types gen * Fix unlocking unlocked * Fix race in tests * Update enterprise/derpmesh/derpmesh.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Rename to syncReplicas * Reuse http client * Delete old replicas on a CRON * Fix race condition in connection tests * Fix linting * Fix nil type * Move pubsub to in-memory for twenty test * Add comment for configuration tweaking * Fix leak with transport * Fix close leak in derpmesh * Fix race when creating server * Remove handler update * Skip test on Windows * Fix DERP mesh test * Wrap HTTP handler replacement in mutex * Fix error message for relay * Fix API handler for normal tests * Fix speedtest * Fix replica resend * Fix derpmesh send * Ping async * Increase wait time of template version jobd * Fix race when closing replica sync * Add name to client * Log the derpmap being used * Don't connect if DERP is empty * Improve agent coordinator logging * Fix lock in coordinator * Fix relay addr * Fix race when updating durations * Fix client publish race * Run pubsub loop in a queue * Store agent nodes in order * Fix coordinator locking * Check for closed pipe Co-authored-by: Colin Adler <colin1adler@gmail.com>
2022-10-17 13:43:30 +00:00
// From codersdk/replicas.go
export interface Replica {
readonly id: string;
readonly hostname: string;
readonly created_at: string;
readonly relay_address: string;
readonly region_id: number;
readonly error: string;
readonly database_latency: number;
feat: Add high availability for multiple replicas (#4555) * feat: HA tailnet coordinator * fixup! feat: HA tailnet coordinator * fixup! feat: HA tailnet coordinator * remove printlns * close all connections on coordinator * impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * fixup! impelement high availability feature * Add replicas * Add DERP meshing to arbitrary addresses * Move packages to highavailability folder * Move coordinator to high availability package * Add flags for HA * Rename to replicasync * Denest packages for replicas * Add test for multiple replicas * Fix coordination test * Add HA to the helm chart * Rename function pointer * Add warnings for HA * Add the ability to block endpoints * Add flag to disable P2P connections * Wow, I made the tests pass * Add replicas endpoint * Ensure close kills replica * Update sql * Add database latency to high availability * Pipe TLS to DERP mesh * Fix DERP mesh with TLS * Add tests for TLS * Fix replica sync TLS * Fix RootCA for replica meshing * Remove ID from replicasync * Fix getting certificates for meshing * Remove excessive locking * Fix linting * Store mesh key in the database * Fix replica key for tests * Fix types gen * Fix unlocking unlocked * Fix race in tests * Update enterprise/derpmesh/derpmesh.go Co-authored-by: Colin Adler <colin1adler@gmail.com> * Rename to syncReplicas * Reuse http client * Delete old replicas on a CRON * Fix race condition in connection tests * Fix linting * Fix nil type * Move pubsub to in-memory for twenty test * Add comment for configuration tweaking * Fix leak with transport * Fix close leak in derpmesh * Fix race when creating server * Remove handler update * Skip test on Windows * Fix DERP mesh test * Wrap HTTP handler replacement in mutex * Fix error message for relay * Fix API handler for normal tests * Fix speedtest * Fix replica resend * Fix derpmesh send * Ping async * Increase wait time of template version jobd * Fix race when closing replica sync * Add name to client * Log the derpmap being used * Don't connect if DERP is empty * Improve agent coordinator logging * Fix lock in coordinator * Fix relay addr * Fix race when updating durations * Fix client publish race * Run pubsub loop in a queue * Store agent nodes in order * Fix coordinator locking * Check for closed pipe Co-authored-by: Colin Adler <colin1adler@gmail.com>
2022-10-17 13:43:30 +00:00
}
// From codersdk/workspaces.go
export interface ResolveAutostartResponse {
readonly parameter_mismatch: boolean;
}
// From codersdk/client.go
export interface Response {
readonly message: string;
readonly detail?: string;
readonly validations?: ValidationError[];
}
// From codersdk/roles.go
export interface Role {
readonly name: string;
readonly display_name: string;
}
// From codersdk/deployment.go
export interface SSHConfig {
readonly DeploymentName: string;
readonly SSHConfigOptions: string[];
}
// From codersdk/deployment.go
export interface SSHConfigResponse {
readonly hostname_prefix: string;
readonly ssh_config_options: Record<string, string>;
}
// From codersdk/serversentevents.go
export interface ServerSentEvent {
readonly type: ServerSentEventType;
// Empty interface{} type, cannot resolve the type.
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- interface{}
readonly data: any;
}
// From codersdk/deployment.go
export interface ServiceBannerConfig {
readonly enabled: boolean;
readonly message?: string;
readonly background_color?: string;
2022-12-06 18:38:38 +00:00
}
// From codersdk/deployment.go
export interface SessionCountDeploymentStats {
readonly vscode: number;
readonly ssh: number;
readonly jetbrains: number;
readonly reconnecting_pty: number;
}
// From codersdk/deployment.go
export interface SupportConfig {
readonly links: LinkConfig[];
}
// From codersdk/deployment.go
feat: Build framework for generating API docs (#5383) * WIP * Gen * WIP * chi swagger * WIP * WIP * WIP * GetWorkspaces * GetWorkspaces * Markdown * Use widdershins * WIP * WIP * WIP * Markdown template * Fix: makefile * fmt * Fix: comment * Enable swagger conditionally * fix: site * Default false * Flag tests * fix * fix * template fixes * Fix * Fix * Fix * WIP * Formatted * Cleanup * Templates * BEGIN END SECTION * subshell exit code * Fix * Fix merge * WIP * Fix * Fix fmt * Fix * Generic api.md page * Fix merge * Link pages * Fix * Fix * Fix: links * Add icon * Write manifest file * Fix fmt * Fix: enterprise * Fix: Swagger.Enable * Fix: rename apidocs to apidoc * Fix: find -not -prune * Fix: json not available * Fix: rename Coderd API to Coder API * Fix: npm exec * Fix: api dir * Fix: by ID * Fix: string uuid * Fix: include deleted * Fix: indirect go.mod * Fix: source lib.sh * Fix: shellcheck * Fix: pushd popd * Fix: fmt * Fix: improve workspaces * Fix: swagger-enable * Fix * Fix: mention only HTTP 200 * Fix: IDs * Fix: https * Fix: icon * More APis * Fix: format swagger.json * Fix: SwaggerEndpoint * Fix: SCRIPT_DIR * Fix: PROJECT_ROOT * Fix: use code tags in schemas.md * Fix: examples * Fix: examples * Fix: improve format * Fix: date-time,enums * Fix: include_deleted * Fix: array of * Fix: parameter, response * Fix: string time or null * Workspaces: more docs * Workspaces: more docs * Fix: renderDisplayName * Fix: ActiveUserCount * Fix * Fix: typo * Templates: docs * Notice: incomplete
2022-12-19 17:43:46 +00:00
export interface SwaggerConfig {
readonly enable: boolean;
feat: Build framework for generating API docs (#5383) * WIP * Gen * WIP * chi swagger * WIP * WIP * WIP * GetWorkspaces * GetWorkspaces * Markdown * Use widdershins * WIP * WIP * WIP * Markdown template * Fix: makefile * fmt * Fix: comment * Enable swagger conditionally * fix: site * Default false * Flag tests * fix * fix * template fixes * Fix * Fix * Fix * WIP * Formatted * Cleanup * Templates * BEGIN END SECTION * subshell exit code * Fix * Fix merge * WIP * Fix * Fix fmt * Fix * Generic api.md page * Fix merge * Link pages * Fix * Fix * Fix: links * Add icon * Write manifest file * Fix fmt * Fix: enterprise * Fix: Swagger.Enable * Fix: rename apidocs to apidoc * Fix: find -not -prune * Fix: json not available * Fix: rename Coderd API to Coder API * Fix: npm exec * Fix: api dir * Fix: by ID * Fix: string uuid * Fix: include deleted * Fix: indirect go.mod * Fix: source lib.sh * Fix: shellcheck * Fix: pushd popd * Fix: fmt * Fix: improve workspaces * Fix: swagger-enable * Fix * Fix: mention only HTTP 200 * Fix: IDs * Fix: https * Fix: icon * More APis * Fix: format swagger.json * Fix: SwaggerEndpoint * Fix: SCRIPT_DIR * Fix: PROJECT_ROOT * Fix: use code tags in schemas.md * Fix: examples * Fix: examples * Fix: improve format * Fix: date-time,enums * Fix: include_deleted * Fix: array of * Fix: parameter, response * Fix: string time or null * Workspaces: more docs * Workspaces: more docs * Fix: renderDisplayName * Fix: ActiveUserCount * Fix * Fix: typo * Templates: docs * Notice: incomplete
2022-12-19 17:43:46 +00:00
}
// From codersdk/deployment.go
export interface TLSConfig {
readonly enable: boolean;
readonly address: string;
readonly redirect_http: boolean;
readonly cert_file: string[];
readonly client_auth: string;
readonly client_ca_file: string;
readonly key_file: string[];
readonly min_version: string;
readonly client_cert_file: string;
readonly client_key_file: string;
readonly supported_ciphers: string[];
readonly allow_insecure_ciphers: boolean;
}
// From codersdk/deployment.go
export interface TelemetryConfig {
readonly enable: boolean;
readonly trace: boolean;
readonly url: string;
}
// From codersdk/templates.go
export interface Template {
readonly id: string;
readonly created_at: string;
readonly updated_at: string;
readonly organization_id: string;
readonly name: string;
readonly display_name: string;
readonly provisioner: ProvisionerType;
readonly active_version_id: string;
readonly active_user_count: number;
readonly build_time_stats: TemplateBuildTimeStats;
readonly description: string;
readonly deprecated: boolean;
readonly deprecation_message: string;
readonly icon: string;
readonly default_ttl_ms: number;
readonly activity_bump_ms: number;
readonly use_max_ttl: boolean;
readonly max_ttl_ms: number;
readonly autostop_requirement: TemplateAutostopRequirement;
readonly autostart_requirement: TemplateAutostartRequirement;
readonly created_by_id: string;
readonly created_by_name: string;
readonly allow_user_autostart: boolean;
readonly allow_user_autostop: boolean;
readonly allow_user_cancel_workspace_jobs: boolean;
readonly failure_ttl_ms: number;
readonly time_til_dormant_ms: number;
readonly time_til_dormant_autodelete_ms: number;
readonly require_active_version: boolean;
readonly max_port_share_level: WorkspaceAgentPortShareLevel;
}
2022-10-10 20:37:06 +00:00
// From codersdk/templates.go
export interface TemplateACL {
readonly users: TemplateUser[];
readonly group: TemplateGroup[];
2022-10-10 20:37:06 +00:00
}
// From codersdk/insights.go
export interface TemplateAppUsage {
readonly template_ids: string[];
readonly type: TemplateAppsType;
readonly display_name: string;
readonly slug: string;
readonly icon: string;
readonly seconds: number;
}
// From codersdk/templates.go
export interface TemplateAutostartRequirement {
readonly days_of_week: string[];
}
// From codersdk/templates.go
export interface TemplateAutostopRequirement {
readonly days_of_week: string[];
readonly weeks: number;
}
// From codersdk/templates.go
export type TemplateBuildTimeStats = Record<
WorkspaceTransition,
TransitionStats
>;
// From codersdk/templates.go
export interface TemplateExample {
readonly id: string;
readonly url: string;
readonly name: string;
readonly description: string;
readonly icon: string;
readonly tags: string[];
readonly markdown: string;
}
2022-10-10 20:37:06 +00:00
// From codersdk/templates.go
export interface TemplateGroup extends Group {
readonly role: TemplateRole;
2022-10-10 20:37:06 +00:00
}
// From codersdk/insights.go
export interface TemplateInsightsIntervalReport {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
readonly interval: InsightsReportInterval;
readonly active_users: number;
}
// From codersdk/insights.go
export interface TemplateInsightsReport {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
readonly active_users: number;
readonly apps_usage: TemplateAppUsage[];
readonly parameters_usage: TemplateParameterUsage[];
}
// From codersdk/insights.go
export interface TemplateInsightsRequest {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
readonly interval: InsightsReportInterval;
readonly sections: TemplateInsightsSection[];
}
// From codersdk/insights.go
export interface TemplateInsightsResponse {
readonly report?: TemplateInsightsReport;
readonly interval_reports?: TemplateInsightsIntervalReport[];
}
// From codersdk/insights.go
export interface TemplateParameterUsage {
readonly template_ids: string[];
readonly display_name: string;
readonly name: string;
readonly type: string;
readonly description: string;
readonly options?: TemplateVersionParameterOption[];
readonly values: TemplateParameterValue[];
}
// From codersdk/insights.go
export interface TemplateParameterValue {
readonly value: string;
readonly count: number;
}
2022-10-10 20:37:06 +00:00
// From codersdk/templates.go
export interface TemplateUser extends User {
readonly role: TemplateRole;
2022-10-10 20:37:06 +00:00
}
// From codersdk/templateversions.go
export interface TemplateVersion {
readonly id: string;
readonly template_id?: string;
readonly organization_id?: string;
readonly created_at: string;
readonly updated_at: string;
readonly name: string;
readonly message: string;
readonly job: ProvisionerJob;
readonly readme: string;
readonly created_by: MinimalUser;
readonly archived: boolean;
readonly warnings?: TemplateVersionWarning[];
}
// From codersdk/templateversions.go
export interface TemplateVersionExternalAuth {
readonly id: string;
readonly type: string;
readonly display_name: string;
readonly display_icon: string;
readonly authenticate_url: string;
readonly authenticated: boolean;
}
// From codersdk/templateversions.go
export interface TemplateVersionParameter {
readonly name: string;
readonly display_name?: string;
readonly description: string;
readonly description_plaintext: string;
readonly type: string;
readonly mutable: boolean;
readonly default_value: string;
readonly icon: string;
readonly options: TemplateVersionParameterOption[];
readonly validation_error?: string;
readonly validation_regex?: string;
readonly validation_min?: number;
readonly validation_max?: number;
readonly validation_monotonic?: ValidationMonotonicOrder;
readonly required: boolean;
readonly ephemeral: boolean;
}
// From codersdk/templateversions.go
export interface TemplateVersionParameterOption {
readonly name: string;
readonly description: string;
readonly value: string;
readonly icon: string;
}
// From codersdk/templateversions.go
export interface TemplateVersionVariable {
readonly name: string;
readonly description: string;
readonly type: string;
readonly value: string;
readonly default_value: string;
readonly required: boolean;
readonly sensitive: boolean;
}
// From codersdk/templates.go
export interface TemplateVersionsByTemplateRequest extends Pagination {
readonly template_id: string;
readonly include_archived: boolean;
}
// From codersdk/apikey.go
export interface TokenConfig {
readonly max_token_lifetime: number;
}
// From codersdk/apikey.go
export interface TokensFilter {
readonly include_all: boolean;
}
// From codersdk/deployment.go
export interface TraceConfig {
readonly enable: boolean;
readonly honeycomb_api_key: string;
readonly capture_logs: boolean;
readonly data_dog: boolean;
}
// From codersdk/templates.go
export interface TransitionStats {
readonly P50?: number;
readonly P95?: number;
}
// From codersdk/templates.go
export interface UpdateActiveTemplateVersion {
readonly id: string;
}
// From codersdk/deployment.go
export interface UpdateAppearanceConfig {
readonly application_name: string;
readonly logo_url: string;
readonly service_banner: ServiceBannerConfig;
}
// From codersdk/updatecheck.go
export interface UpdateCheckResponse {
readonly current: boolean;
readonly version: string;
readonly url: string;
}
// From codersdk/health.go
export interface UpdateHealthSettings {
readonly dismissed_healthchecks: HealthSection[];
}
// From codersdk/users.go
export interface UpdateRoles {
readonly roles: string[];
}
2022-10-10 20:37:06 +00:00
// From codersdk/templates.go
export interface UpdateTemplateACL {
readonly user_perms?: Record<string, TemplateRole>;
readonly group_perms?: Record<string, TemplateRole>;
2022-10-10 20:37:06 +00:00
}
// From codersdk/templates.go
export interface UpdateTemplateMeta {
readonly name?: string;
readonly display_name?: string;
readonly description?: string;
readonly icon?: string;
readonly default_ttl_ms?: number;
readonly activity_bump_ms?: number;
readonly max_ttl_ms?: number;
readonly autostop_requirement?: TemplateAutostopRequirement;
readonly autostart_requirement?: TemplateAutostartRequirement;
readonly allow_user_autostart?: boolean;
readonly allow_user_autostop?: boolean;
readonly allow_user_cancel_workspace_jobs?: boolean;
readonly failure_ttl_ms?: number;
readonly time_til_dormant_ms?: number;
readonly time_til_dormant_autodelete_ms?: number;
readonly update_workspace_last_used_at: boolean;
readonly update_workspace_dormant_at: boolean;
readonly require_active_version: boolean;
readonly deprecation_message?: string;
readonly disable_everyone_group_access: boolean;
readonly max_port_share_level?: WorkspaceAgentPortShareLevel;
}
2023-12-14 17:38:44 +00:00
// From codersdk/users.go
export interface UpdateUserAppearanceSettingsRequest {
readonly theme_preference: string;
}
// From codersdk/users.go
export interface UpdateUserPasswordRequest {
readonly old_password: string;
readonly password: string;
}
// From codersdk/users.go
export interface UpdateUserProfileRequest {
readonly username: string;
readonly name: string;
}
// From codersdk/users.go
export interface UpdateUserQuietHoursScheduleRequest {
readonly schedule: string;
}
// From codersdk/workspaces.go
export interface UpdateWorkspaceAutomaticUpdatesRequest {
readonly automatic_updates: AutomaticUpdates;
}
// From codersdk/workspaces.go
export interface UpdateWorkspaceAutostartRequest {
readonly schedule?: string;
}
// From codersdk/workspaces.go
export interface UpdateWorkspaceDormancy {
readonly dormant: boolean;
}
// From codersdk/workspaceproxy.go
export interface UpdateWorkspaceProxyResponse {
readonly proxy: WorkspaceProxy;
readonly proxy_token: string;
}
// From codersdk/workspaces.go
export interface UpdateWorkspaceRequest {
readonly name?: string;
}
// From codersdk/workspaces.go
export interface UpdateWorkspaceTTLRequest {
readonly ttl_ms?: number;
}
// From codersdk/files.go
export interface UploadResponse {
readonly hash: string;
}
// From codersdk/workspaceagentportshare.go
export interface UpsertWorkspaceAgentPortShareRequest {
readonly agent_name: string;
readonly port: number;
readonly share_level: WorkspaceAgentPortShareLevel;
}
// From codersdk/users.go
export interface User {
readonly id: string;
readonly username: string;
readonly name: string;
readonly email: string;
readonly created_at: string;
readonly last_seen_at: string;
readonly status: UserStatus;
readonly organization_ids: string[];
readonly roles: Role[];
readonly avatar_url: string;
readonly login_type: LoginType;
2023-12-14 17:38:44 +00:00
readonly theme_preference: string;
}
// From codersdk/insights.go
export interface UserActivity {
readonly template_ids: string[];
readonly user_id: string;
readonly username: string;
readonly avatar_url: string;
readonly seconds: number;
}
// From codersdk/insights.go
export interface UserActivityInsightsReport {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
readonly users: UserActivity[];
}
// From codersdk/insights.go
export interface UserActivityInsightsRequest {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
}
// From codersdk/insights.go
export interface UserActivityInsightsResponse {
readonly report: UserActivityInsightsReport;
}
// From codersdk/insights.go
export interface UserLatency {
readonly template_ids: string[];
readonly user_id: string;
readonly username: string;
readonly avatar_url: string;
readonly latency_ms: ConnectionLatency;
}
// From codersdk/insights.go
export interface UserLatencyInsightsReport {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
readonly users: UserLatency[];
}
// From codersdk/insights.go
export interface UserLatencyInsightsRequest {
readonly start_time: string;
readonly end_time: string;
readonly template_ids: string[];
}
// From codersdk/insights.go
export interface UserLatencyInsightsResponse {
readonly report: UserLatencyInsightsReport;
}
// From codersdk/users.go
export interface UserLoginType {
readonly login_type: LoginType;
}
// From codersdk/users.go
export interface UserParameter {
readonly name: string;
readonly value: string;
}
// From codersdk/deployment.go
export interface UserQuietHoursScheduleConfig {
readonly default_schedule: string;
readonly allow_user_custom: boolean;
}
// From codersdk/users.go
export interface UserQuietHoursScheduleResponse {
readonly raw_schedule: string;
readonly user_set: boolean;
readonly user_can_set: boolean;
readonly time: string;
readonly timezone: string;
readonly next: string;
}
// From codersdk/users.go
export interface UserRoles {
readonly roles: string[];
readonly organization_roles: Record<string, string[]>;
}
// From codersdk/users.go
export interface UsersRequest extends Pagination {
readonly q?: string;
}
// From codersdk/client.go
export interface ValidationError {
readonly field: string;
readonly detail: string;
}
// From codersdk/organizations.go
export interface VariableValue {
readonly name: string;
readonly value: string;
}
// From codersdk/workspaces.go
export interface Workspace {
readonly id: string;
readonly created_at: string;
readonly updated_at: string;
readonly owner_id: string;
readonly owner_name: string;
readonly owner_avatar_url: string;
readonly organization_id: string;
readonly template_id: string;
readonly template_name: string;
readonly template_display_name: string;
readonly template_icon: string;
readonly template_allow_user_cancel_workspace_jobs: boolean;
readonly template_active_version_id: string;
readonly template_require_active_version: boolean;
readonly latest_build: WorkspaceBuild;
readonly outdated: boolean;
readonly name: string;
readonly autostart_schedule?: string;
readonly ttl_ms?: number;
readonly last_used_at: string;
readonly deleting_at?: string;
readonly dormant_at?: string;
readonly health: WorkspaceHealth;
readonly automatic_updates: AutomaticUpdates;
readonly allow_renames: boolean;
readonly favorite: boolean;
}
2022-10-03 21:01:13 +00:00
// From codersdk/workspaceagents.go
export interface WorkspaceAgent {
readonly id: string;
readonly created_at: string;
readonly updated_at: string;
readonly first_connected_at?: string;
readonly last_connected_at?: string;
readonly disconnected_at?: string;
readonly started_at?: string;
readonly ready_at?: string;
readonly status: WorkspaceAgentStatus;
readonly lifecycle_state: WorkspaceAgentLifecycle;
readonly name: string;
readonly resource_id: string;
readonly instance_id?: string;
readonly architecture: string;
readonly environment_variables: Record<string, string>;
readonly operating_system: string;
readonly logs_length: number;
readonly logs_overflowed: boolean;
readonly directory?: string;
readonly expanded_directory?: string;
readonly version: string;
readonly api_version: string;
readonly apps: WorkspaceApp[];
readonly latency?: Record<string, DERPRegion>;
readonly connection_timeout_seconds: number;
readonly troubleshooting_url: string;
readonly subsystems: AgentSubsystem[];
readonly health: WorkspaceAgentHealth;
readonly display_apps: DisplayApp[];
readonly log_sources: WorkspaceAgentLogSource[];
readonly scripts: WorkspaceAgentScript[];
readonly startup_script_behavior: WorkspaceAgentStartupScriptBehavior;
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentHealth {
readonly healthy: boolean;
readonly reason?: string;
2022-06-24 15:25:01 +00:00
}
// From codersdk/workspaceagentconn.go
export interface WorkspaceAgentListeningPort {
readonly process_name: string;
readonly network: string;
readonly port: number;
}
// From codersdk/workspaceagentconn.go
export interface WorkspaceAgentListeningPortsResponse {
readonly ports: WorkspaceAgentListeningPort[];
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentLog {
readonly id: number;
readonly created_at: string;
readonly output: string;
readonly level: LogLevel;
readonly source_id: string;
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentLogSource {
readonly workspace_agent_id: string;
readonly id: string;
readonly created_at: string;
readonly display_name: string;
readonly icon: string;
}
2023-03-31 20:26:19 +00:00
// From codersdk/workspaceagents.go
export interface WorkspaceAgentMetadata {
readonly result: WorkspaceAgentMetadataResult;
readonly description: WorkspaceAgentMetadataDescription;
2023-03-31 20:26:19 +00:00
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentMetadataDescription {
readonly display_name: string;
readonly key: string;
readonly script: string;
readonly interval: number;
readonly timeout: number;
2023-03-31 20:26:19 +00:00
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentMetadataResult {
readonly collected_at: string;
readonly age: number;
readonly value: string;
readonly error: string;
2023-03-31 20:26:19 +00:00
}
// From codersdk/workspaceagentportshare.go
export interface WorkspaceAgentPortShare {
readonly workspace_id: string;
readonly agent_name: string;
readonly port: number;
readonly share_level: WorkspaceAgentPortShareLevel;
}
// From codersdk/workspaceagentportshare.go
export interface WorkspaceAgentPortShares {
readonly shares: WorkspaceAgentPortShare[];
}
// From codersdk/workspaceagents.go
export interface WorkspaceAgentScript {
readonly log_source_id: string;
readonly log_path: string;
readonly script: string;
readonly cron: string;
readonly run_on_start: boolean;
readonly run_on_stop: boolean;
readonly start_blocks_login: boolean;
readonly timeout: number;
}
// From codersdk/workspaceapps.go
feat: Add workspace application support (#1773) * feat: Add app support This adds apps as a property to a workspace agent. The resource is added to the Terraform provider here: https://github.com/coder/terraform-provider-coder/pull/17 Apps will be opened in the dashboard or via the CLI with `coder open <name>`. If `command` is specified, a terminal will appear locally and in the web. If `target` is specified, the browser will open to an exposed instance of that target. * Compare fields in apps test * Update Terraform provider to use relative path * Add some basic structure for routing * chore: Remove interface from coderd and lift API surface Abstracting coderd into an interface added misdirection because the interface was never intended to be fulfilled outside of a single implementation. This lifts the abstraction, and attaches all handlers to a root struct named `*coderd.API`. * Add basic proxy logic * Add proxying based on path * Add app proxying for wildcards * Add wsconncache * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * Add workspace route proxying endpoint - Makes the workspace conn cache concurrency-safe - Reduces unnecessary open checks in `peer.Channel` - Fixes the use of a temporary context when dialing a workspace agent * Add embed errors * chore: Refactor site to improve testing It was difficult to develop this package due to the embed build tag being mandatory on the tests. The logic to test doesn't require any embedded files. * Add test for error handler * Remove unused access url * Add RBAC tests * Fix dial agent syntax * Fix linting errors * Fix gen * Fix icon required * Adjust migration number * Fix proxy error status code * Fix empty db lookup
2022-06-04 20:13:37 +00:00
export interface WorkspaceApp {
readonly id: string;
readonly url: string;
readonly external: boolean;
readonly slug: string;
readonly display_name: string;
readonly command?: string;
readonly icon?: string;
readonly subdomain: boolean;
readonly subdomain_name?: string;
readonly sharing_level: WorkspaceAppSharingLevel;
readonly healthcheck: Healthcheck;
readonly health: WorkspaceAppHealth;
feat: Add workspace application support (#1773) * feat: Add app support This adds apps as a property to a workspace agent. The resource is added to the Terraform provider here: https://github.com/coder/terraform-provider-coder/pull/17 Apps will be opened in the dashboard or via the CLI with `coder open <name>`. If `command` is specified, a terminal will appear locally and in the web. If `target` is specified, the browser will open to an exposed instance of that target. * Compare fields in apps test * Update Terraform provider to use relative path * Add some basic structure for routing * chore: Remove interface from coderd and lift API surface Abstracting coderd into an interface added misdirection because the interface was never intended to be fulfilled outside of a single implementation. This lifts the abstraction, and attaches all handlers to a root struct named `*coderd.API`. * Add basic proxy logic * Add proxying based on path * Add app proxying for wildcards * Add wsconncache * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * fix: Race when writing to a closed pipe This is such an intermittent race it's difficult to track, but regardless this is an improvement to the code. * Add workspace route proxying endpoint - Makes the workspace conn cache concurrency-safe - Reduces unnecessary open checks in `peer.Channel` - Fixes the use of a temporary context when dialing a workspace agent * Add embed errors * chore: Refactor site to improve testing It was difficult to develop this package due to the embed build tag being mandatory on the tests. The logic to test doesn't require any embedded files. * Add test for error handler * Remove unused access url * Add RBAC tests * Fix dial agent syntax * Fix linting errors * Fix gen * Fix icon required * Adjust migration number * Fix proxy error status code * Fix empty db lookup
2022-06-04 20:13:37 +00:00
}
// From codersdk/workspacebuilds.go
export interface WorkspaceBuild {
readonly id: string;
readonly created_at: string;
readonly updated_at: string;
readonly workspace_id: string;
readonly workspace_name: string;
readonly workspace_owner_id: string;
readonly workspace_owner_name: string;
readonly workspace_owner_avatar_url: string;
readonly template_version_id: string;
readonly template_version_name: string;
readonly build_number: number;
readonly transition: WorkspaceTransition;
readonly initiator_id: string;
readonly initiator_name: string;
readonly job: ProvisionerJob;
readonly reason: BuildReason;
readonly resources: WorkspaceResource[];
readonly deadline?: string;
readonly max_deadline?: string;
readonly status: WorkspaceStatus;
readonly daily_cost: number;
}
// From codersdk/workspacebuilds.go
export interface WorkspaceBuildParameter {
readonly name: string;
readonly value: string;
}
// From codersdk/workspaces.go
export interface WorkspaceBuildsRequest extends Pagination {
readonly since?: string;
}
// From codersdk/deployment.go
export interface WorkspaceConnectionLatencyMS {
readonly P50: number;
readonly P95: number;
}
// From codersdk/deployment.go
export interface WorkspaceDeploymentStats {
readonly pending: number;
readonly building: number;
readonly running: number;
readonly failed: number;
readonly stopped: number;
readonly connection_latency_ms: WorkspaceConnectionLatencyMS;
readonly rx_bytes: number;
readonly tx_bytes: number;
}
// From codersdk/workspaces.go
export interface WorkspaceFilter {
readonly q?: string;
}
// From codersdk/workspaces.go
export interface WorkspaceHealth {
readonly healthy: boolean;
readonly failing_agents: string[];
}
// From codersdk/workspaces.go
export interface WorkspaceOptions {
readonly include_deleted?: boolean;
}
// From codersdk/workspaceproxy.go
export interface WorkspaceProxy extends Region {
readonly derp_enabled: boolean;
readonly derp_only: boolean;
readonly status?: WorkspaceProxyStatus;
readonly created_at: string;
readonly updated_at: string;
readonly deleted: boolean;
readonly version: string;
}
// From codersdk/deployment.go
export interface WorkspaceProxyBuildInfo {
readonly workspace_proxy: boolean;
readonly dashboard_url: string;
}
// From codersdk/workspaceproxy.go
export interface WorkspaceProxyStatus {
readonly status: ProxyHealthStatus;
readonly report?: ProxyHealthReport;
readonly checked_at: string;
}
// From codersdk/workspaces.go
2022-09-30 18:01:20 +00:00
export interface WorkspaceQuota {
readonly credits_consumed: number;
readonly budget: number;
2022-09-30 18:01:20 +00:00
}
2022-10-03 21:01:13 +00:00
// From codersdk/workspacebuilds.go
export interface WorkspaceResource {
readonly id: string;
readonly created_at: string;
readonly job_id: string;
readonly workspace_transition: WorkspaceTransition;
readonly type: string;
readonly name: string;
readonly hide: boolean;
readonly icon: string;
readonly agents?: WorkspaceAgent[];
readonly metadata?: WorkspaceResourceMetadata[];
readonly daily_cost: number;
}
2022-10-03 21:01:13 +00:00
// From codersdk/workspacebuilds.go
export interface WorkspaceResourceMetadata {
readonly key: string;
readonly value: string;
readonly sensitive: boolean;
}
// From codersdk/workspaces.go
export interface WorkspacesRequest extends Pagination {
readonly q?: string;
}
// From codersdk/workspaces.go
export interface WorkspacesResponse {
readonly workspaces: Workspace[];
readonly count: number;
}
// From codersdk/apikey.go
export type APIKeyScope = "all" | "application_connect";
export const APIKeyScopes: APIKeyScope[] = ["all", "application_connect"];
// From codersdk/workspaceagents.go
export type AgentSubsystem = "envbox" | "envbuilder" | "exectrace";
export const AgentSubsystems: AgentSubsystem[] = [
"envbox",
"envbuilder",
"exectrace",
];
// From codersdk/audit.go
export type AuditAction =
| "create"
| "delete"
| "login"
| "logout"
| "register"
| "start"
| "stop"
| "write";
export const AuditActions: AuditAction[] = [
"create",
"delete",
"login",
"logout",
"register",
"start",
"stop",
"write",
];
// From codersdk/workspaces.go
export type AutomaticUpdates = "always" | "never";
export const AutomaticUpdateses: AutomaticUpdates[] = ["always", "never"];
// From codersdk/workspacebuilds.go
export type BuildReason = "autostart" | "autostop" | "initiator";
export const BuildReasons: BuildReason[] = [
"autostart",
"autostop",
"initiator",
];
// From codersdk/workspaceagents.go
export type DisplayApp =
| "port_forwarding_helper"
| "ssh_helper"
| "vscode"
| "vscode_insiders"
| "web_terminal";
export const DisplayApps: DisplayApp[] = [
"port_forwarding_helper",
"ssh_helper",
"vscode",
"vscode_insiders",
"web_terminal",
];
// From codersdk/externalauth.go
export type EnhancedExternalAuthProvider =
| "azure-devops"
| "bitbucket-cloud"
| "bitbucket-server"
| "github"
| "gitlab"
| "jfrog"
| "slack";
export const EnhancedExternalAuthProviders: EnhancedExternalAuthProvider[] = [
"azure-devops",
"bitbucket-cloud",
"bitbucket-server",
"github",
"gitlab",
"jfrog",
"slack",
];
// From codersdk/deployment.go
export type Entitlement = "entitled" | "grace_period" | "not_entitled";
export const Entitlements: Entitlement[] = [
"entitled",
"grace_period",
"not_entitled",
];
// From codersdk/deployment.go
export type Experiment = "example" | "shared-ports";
export const Experiments: Experiment[] = ["example", "shared-ports"];
// From codersdk/deployment.go
export type FeatureName =
| "access_control"
| "advanced_template_scheduling"
| "appearance"
| "audit_log"
| "browser_only"
| "control_shared_ports"
| "external_provisioner_daemons"
| "external_token_encryption"
| "high_availability"
| "multiple_external_auth"
| "oauth2_provider"
| "scim"
| "template_rbac"
| "user_limit"
| "user_role_management"
| "workspace_batch_actions"
| "workspace_proxy";
export const FeatureNames: FeatureName[] = [
"access_control",
"advanced_template_scheduling",
"appearance",
"audit_log",
"browser_only",
"control_shared_ports",
"external_provisioner_daemons",
"external_token_encryption",
"high_availability",
"multiple_external_auth",
"oauth2_provider",
"scim",
"template_rbac",
"user_limit",
"user_role_management",
"workspace_batch_actions",
"workspace_proxy",
];
// From codersdk/groups.go
export type GroupSource = "oidc" | "user";
export const GroupSources: GroupSource[] = ["oidc", "user"];
// From codersdk/health.go
export type HealthSection =
| "AccessURL"
| "DERP"
| "Database"
| "ProvisionerDaemons"
| "Websocket"
| "WorkspaceProxy";
export const HealthSections: HealthSection[] = [
"AccessURL",
"DERP",
"Database",
"ProvisionerDaemons",
"Websocket",
"WorkspaceProxy",
];
// From codersdk/insights.go
export type InsightsReportInterval = "day" | "week";
export const InsightsReportIntervals: InsightsReportInterval[] = [
"day",
"week",
];
// From codersdk/provisionerdaemons.go
export type JobErrorCode = "REQUIRED_TEMPLATE_VARIABLES";
export const JobErrorCodes: JobErrorCode[] = ["REQUIRED_TEMPLATE_VARIABLES"];
// From codersdk/provisionerdaemons.go
export type LogLevel = "debug" | "error" | "info" | "trace" | "warn";
export const LogLevels: LogLevel[] = [
"debug",
"error",
"info",
"trace",
"warn",
];
// From codersdk/provisionerdaemons.go
export type LogSource = "provisioner" | "provisioner_daemon";
export const LogSources: LogSource[] = ["provisioner", "provisioner_daemon"];
2022-10-06 19:02:27 +00:00
// From codersdk/apikey.go
export type LoginType = "" | "github" | "none" | "oidc" | "password" | "token";
export const LoginTypes: LoginType[] = [
"",
"github",
"none",
"oidc",
"password",
"token",
];
// From codersdk/provisionerdaemons.go
export type ProvisionerJobStatus =
| "canceled"
| "canceling"
| "failed"
| "pending"
| "running"
| "succeeded"
| "unknown";
export const ProvisionerJobStatuses: ProvisionerJobStatus[] = [
"canceled",
"canceling",
"failed",
"pending",
"running",
"succeeded",
"unknown",
];
2022-04-19 02:03:37 +00:00
// From codersdk/workspaces.go
export type ProvisionerLogLevel = "debug";
export const ProvisionerLogLevels: ProvisionerLogLevel[] = ["debug"];
// From codersdk/organizations.go
export type ProvisionerStorageMethod = "file";
export const ProvisionerStorageMethods: ProvisionerStorageMethod[] = ["file"];
// From codersdk/organizations.go
export type ProvisionerType = "echo" | "terraform";
export const ProvisionerTypes: ProvisionerType[] = ["echo", "terraform"];
// From codersdk/workspaceproxy.go
export type ProxyHealthStatus =
| "ok"
| "unhealthy"
| "unreachable"
| "unregistered";
export const ProxyHealthStatuses: ProxyHealthStatus[] = [
"ok",
"unhealthy",
"unreachable",
"unregistered",
];
// From codersdk/rbacresources.go
export type RBACResource =
| "api_key"
| "application_connect"
| "assign_org_role"
| "assign_role"
| "audit_log"
| "debug_info"
| "deployment_config"
| "deployment_stats"
| "file"
| "group"
| "license"
| "organization"
| "organization_member"
| "provisioner_daemon"
| "replicas"
| "system"
| "template"
| "template_insights"
| "user"
| "user_data"
| "user_workspace_build_parameters"
| "workspace"
| "workspace_execution"
| "workspace_proxy";
export const RBACResources: RBACResource[] = [
"api_key",
"application_connect",
"assign_org_role",
"assign_role",
"audit_log",
"debug_info",
"deployment_config",
"deployment_stats",
"file",
"group",
"license",
"organization",
"organization_member",
"provisioner_daemon",
"replicas",
"system",
"template",
"template_insights",
"user",
"user_data",
"user_workspace_build_parameters",
"workspace",
"workspace_execution",
"workspace_proxy",
];
// From codersdk/audit.go
export type ResourceType =
| "api_key"
| "convert_login"
| "git_ssh_key"
| "group"
| "health_settings"
| "license"
| "organization"
| "template"
| "template_version"
| "user"
| "workspace"
| "workspace_build"
| "workspace_proxy";
export const ResourceTypes: ResourceType[] = [
"api_key",
"convert_login",
"git_ssh_key",
"group",
"health_settings",
"license",
"organization",
"template",
"template_version",
"user",
"workspace",
"workspace_build",
"workspace_proxy",
];
// From codersdk/serversentevents.go
export type ServerSentEventType = "data" | "error" | "ping";
export const ServerSentEventTypes: ServerSentEventType[] = [
"data",
"error",
"ping",
];
// From codersdk/insights.go
export type TemplateAppsType = "app" | "builtin";
export const TemplateAppsTypes: TemplateAppsType[] = ["app", "builtin"];
// From codersdk/insights.go
export type TemplateInsightsSection = "interval_reports" | "report";
export const TemplateInsightsSections: TemplateInsightsSection[] = [
"interval_reports",
"report",
];
2022-10-10 20:37:06 +00:00
// From codersdk/templates.go
export type TemplateRole = "" | "admin" | "use";
export const TemplateRoles: TemplateRole[] = ["", "admin", "use"];
2022-10-10 20:37:06 +00:00
// From codersdk/templateversions.go
export type TemplateVersionWarning = "UNSUPPORTED_WORKSPACES";
export const TemplateVersionWarnings: TemplateVersionWarning[] = [
"UNSUPPORTED_WORKSPACES",
];
// From codersdk/users.go
export type UserStatus = "active" | "dormant" | "suspended";
export const UserStatuses: UserStatus[] = ["active", "dormant", "suspended"];
// From codersdk/templateversions.go
export type ValidationMonotonicOrder = "decreasing" | "increasing";
export const ValidationMonotonicOrders: ValidationMonotonicOrder[] = [
"decreasing",
"increasing",
];
// From codersdk/workspaceagents.go
export type WorkspaceAgentLifecycle =
| "created"
| "off"
| "ready"
| "shutdown_error"
| "shutdown_timeout"
| "shutting_down"
| "start_error"
| "start_timeout"
| "starting";
export const WorkspaceAgentLifecycles: WorkspaceAgentLifecycle[] = [
"created",
"off",
"ready",
"shutdown_error",
"shutdown_timeout",
"shutting_down",
"start_error",
"start_timeout",
"starting",
];
// From codersdk/workspaceagentportshare.go
export type WorkspaceAgentPortShareLevel = "authenticated" | "owner" | "public";
export const WorkspaceAgentPortShareLevels: WorkspaceAgentPortShareLevel[] = [
"authenticated",
"owner",
"public",
];
// From codersdk/workspaceagents.go
export type WorkspaceAgentStartupScriptBehavior = "blocking" | "non-blocking";
export const WorkspaceAgentStartupScriptBehaviors: WorkspaceAgentStartupScriptBehavior[] =
["blocking", "non-blocking"];
2022-10-03 21:01:13 +00:00
// From codersdk/workspaceagents.go
export type WorkspaceAgentStatus =
| "connected"
| "connecting"
| "disconnected"
| "timeout";
export const WorkspaceAgentStatuses: WorkspaceAgentStatus[] = [
"connected",
"connecting",
"disconnected",
"timeout",
];
// From codersdk/workspaceapps.go
export type WorkspaceAppHealth =
| "disabled"
| "healthy"
| "initializing"
| "unhealthy";
export const WorkspaceAppHealths: WorkspaceAppHealth[] = [
"disabled",
"healthy",
"initializing",
"unhealthy",
];
// From codersdk/workspaceapps.go
export type WorkspaceAppSharingLevel = "authenticated" | "owner" | "public";
export const WorkspaceAppSharingLevels: WorkspaceAppSharingLevel[] = [
"authenticated",
"owner",
"public",
];
// From codersdk/workspacebuilds.go
export type WorkspaceStatus =
| "canceled"
| "canceling"
| "deleted"
| "deleting"
| "failed"
| "pending"
| "running"
| "starting"
| "stopped"
| "stopping";
export const WorkspaceStatuses: WorkspaceStatus[] = [
"canceled",
"canceling",
"deleted",
"deleting",
"failed",
"pending",
"running",
"starting",
"stopped",
"stopping",
];
// From codersdk/workspacebuilds.go
export type WorkspaceTransition = "delete" | "start" | "stop";
export const WorkspaceTransitions: WorkspaceTransition[] = [
"delete",
"start",
"stop",
];
// From codersdk/workspaceproxy.go
export type RegionTypes = Region | WorkspaceProxy;
// The code below is generated from coderd/healthcheck.
// From healthcheck/accessurl.go
export interface HealthcheckAccessURLReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
readonly dismissed: boolean;
readonly access_url: string;
readonly reachable: boolean;
readonly status_code: number;
readonly healthz_response: string;
readonly error?: string;
}
// From healthcheck/database.go
export interface HealthcheckDatabaseReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
readonly dismissed: boolean;
readonly reachable: boolean;
readonly latency: string;
readonly latency_ms: number;
readonly threshold_ms: number;
readonly error?: string;
}
// From healthcheck/provisioner.go
export interface HealthcheckProvisionerDaemonsReport {
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
readonly dismissed: boolean;
readonly error?: string;
readonly items: HealthcheckProvisionerDaemonsReportItem[];
}
// From healthcheck/provisioner.go
export interface HealthcheckProvisionerDaemonsReportItem {
readonly provisioner_daemon: ProvisionerDaemon;
readonly warnings: HealthMessage[];
}
// From healthcheck/healthcheck.go
export interface HealthcheckReport {
readonly time: string;
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly failing_sections: HealthSection[];
readonly derp: DerphealthReport;
readonly access_url: HealthcheckAccessURLReport;
readonly websocket: HealthcheckWebsocketReport;
readonly database: HealthcheckDatabaseReport;
readonly workspace_proxy: HealthcheckWorkspaceProxyReport;
readonly provisioner_daemons: HealthcheckProvisionerDaemonsReport;
readonly coder_version: string;
}
// From healthcheck/websocket.go
export interface HealthcheckWebsocketReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: string[];
readonly dismissed: boolean;
readonly body: string;
readonly code: number;
readonly error?: string;
}
// From healthcheck/workspaceproxy.go
export interface HealthcheckWorkspaceProxyReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
readonly dismissed: boolean;
readonly error?: string;
readonly workspace_proxies: RegionsResponse<WorkspaceProxy>;
}
// The code below is generated from cli/clibase.
// From clibase/clibase.go
export type ClibaseAnnotations = Record<string, string>;
// From clibase/clibase.go
export interface ClibaseGroup {
readonly parent?: ClibaseGroup;
readonly name?: string;
readonly yaml?: string;
readonly description?: string;
}
// From clibase/option.go
export interface ClibaseOption {
readonly name?: string;
readonly description?: string;
readonly required?: boolean;
readonly flag?: string;
readonly flag_shorthand?: string;
readonly env?: string;
readonly yaml?: string;
readonly default?: string;
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Golang interface, unable to resolve type.
readonly value?: any;
readonly annotations?: ClibaseAnnotations;
readonly group?: ClibaseGroup;
readonly use_instead?: ClibaseOption[];
readonly hidden?: boolean;
readonly value_source?: ClibaseValueSource;
}
// From clibase/option.go
export type ClibaseOptionSet = ClibaseOption[];
// From clibase/option.go
export type ClibaseValueSource = "" | "default" | "env" | "flag" | "yaml";
export const ClibaseValueSources: ClibaseValueSource[] = [
"",
"default",
"env",
"flag",
"yaml",
];
// The code below is generated from coderd/healthcheck/health.
// From health/model.go
export interface HealthMessage {
readonly code: HealthCode;
readonly message: string;
}
// From health/model.go
export type HealthCode =
| "EACS01"
| "EACS02"
| "EACS03"
| "EACS04"
| "EDB01"
| "EDB02"
| "EDERP01"
| "EDERP02"
| "EPD01"
| "EPD02"
| "EPD03"
| "EUNKNOWN"
| "EWP01"
| "EWP02"
| "EWP03"
| "EWP04"
| "EWS01"
| "EWS02"
| "EWS03";
export const HealthCodes: HealthCode[] = [
"EACS01",
"EACS02",
"EACS03",
"EACS04",
"EDB01",
"EDB02",
"EDERP01",
"EDERP02",
"EPD01",
"EPD02",
"EPD03",
"EUNKNOWN",
"EWP01",
"EWP02",
"EWP03",
"EWP04",
"EWS01",
"EWS02",
"EWS03",
];
// From health/model.go
export type HealthSeverity = "error" | "ok" | "warning";
export const HealthSeveritys: HealthSeverity[] = ["error", "ok", "warning"];
// The code below is generated from coderd/healthcheck/derphealth.
// From derphealth/derp.go
export interface DerphealthNodeReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
// Named type "tailscale.com/tailcfg.DERPNode" unknown, using "any"
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- External type
readonly node?: any;
// Named type "tailscale.com/derp.ServerInfoMessage" unknown, using "any"
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- External type
readonly node_info: any;
readonly can_exchange_messages: boolean;
readonly round_trip_ping: string;
readonly round_trip_ping_ms: number;
readonly uses_websocket: boolean;
readonly client_logs: string[][];
readonly client_errs: string[][];
readonly error?: string;
readonly stun: DerphealthStunReport;
}
// From derphealth/derp.go
export interface DerphealthRegionReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
// Named type "tailscale.com/tailcfg.DERPRegion" unknown, using "any"
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- External type
readonly region?: any;
readonly node_reports: DerphealthNodeReport[];
readonly error?: string;
}
// From derphealth/derp.go
export interface DerphealthReport {
readonly healthy: boolean;
readonly severity: HealthSeverity;
readonly warnings: HealthMessage[];
readonly dismissed: boolean;
readonly regions: Record<number, DerphealthRegionReport>;
// Named type "tailscale.com/net/netcheck.Report" unknown, using "any"
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- External type
readonly netcheck?: any;
readonly netcheck_err?: string;
readonly netcheck_logs: string[];
readonly error?: string;
}
// From derphealth/derp.go
export interface DerphealthStunReport {
readonly Enabled: boolean;
readonly CanSTUN: boolean;
readonly Error?: string;
}