// Generated by tsbindgen - Architecture // Namespace: Microsoft.Extensions.Diagnostics.HealthChecks // Assembly: Microsoft.Extensions.Diagnostics.HealthChecks, Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions // Core type aliases from @tsonic/core import type { fnptr, ptr, sbyte, byte, short, ushort, int, uint, long, ulong, int128, uint128, half, float, double, decimal, nint, nuint, char } from '@tsonic/core/types.js'; // Import types from other namespaces import type { ICollection_1, IEnumerable_1, IReadOnlyDictionary_2, ISet_1 } from "@tsonic/dotnet/System.Collections.Generic/internal/index.js"; import type { Task, Task_1 } from "@tsonic/dotnet/System.Threading.Tasks/internal/index.js"; import type { CancellationToken } from "@tsonic/dotnet/System.Threading/internal/index.js"; import * as System_Internal from "@tsonic/dotnet/System/internal/index.js"; import type { Boolean as ClrBoolean, Enum, Exception, Func_2, IComparable, IConvertible, IFormattable, Int32, IServiceProvider, ISpanFormattable, Nullable_1, Object as ClrObject, String as ClrString, TimeSpan, ValueType } from "@tsonic/dotnet/System/internal/index.js"; export enum HealthStatus { Unhealthy = 0, Degraded = 1, Healthy = 2 } export interface IHealthCheck$instance { readonly __tsonic_iface_Microsoft_Extensions_Diagnostics_HealthChecks_IHealthCheck: never; CheckHealthAsync(context: HealthCheckContext, cancellationToken?: CancellationToken): Task_1; } export type IHealthCheck = IHealthCheck$instance; export interface IHealthCheckPublisher$instance { readonly __tsonic_iface_Microsoft_Extensions_Diagnostics_HealthChecks_IHealthCheckPublisher: never; PublishAsync(report: HealthReport, cancellationToken: CancellationToken): Task; } export type IHealthCheckPublisher = IHealthCheckPublisher$instance; export interface HealthCheckResult$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckResult: never; readonly Data: IReadOnlyDictionary_2; readonly Description: string | null; readonly Exception: Exception | null; readonly Status: HealthStatus; } export const HealthCheckResult: { new(status: HealthStatus, description: string | null, exception: Exception | null, data: IReadOnlyDictionary_2 | null): HealthCheckResult; Degraded(description?: string | null, exception?: Exception | null, data?: IReadOnlyDictionary_2 | null): HealthCheckResult; Healthy(description?: string | null, data?: IReadOnlyDictionary_2 | null): HealthCheckResult; Unhealthy(description?: string | null, exception?: Exception | null, data?: IReadOnlyDictionary_2 | null): HealthCheckResult; }; export type HealthCheckResult = HealthCheckResult$instance; export interface HealthReportEntry$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthReportEntry: never; readonly Data: IReadOnlyDictionary_2; readonly Description: string | null; readonly Duration: TimeSpan; readonly Exception: Exception | null; readonly Status: HealthStatus; readonly Tags: IEnumerable_1; } export const HealthReportEntry: { new(status: HealthStatus, description: string | null, duration: TimeSpan, exception: Exception | null, data: IReadOnlyDictionary_2 | null): HealthReportEntry; new(status: HealthStatus, description: string | null, duration: TimeSpan, exception: Exception | null, data: IReadOnlyDictionary_2 | null, tags: IEnumerable_1 | null): HealthReportEntry; }; export type HealthReportEntry = HealthReportEntry$instance; export interface HealthCheckContext$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckContext: never; Registration: HealthCheckRegistration; } export const HealthCheckContext: { new(): HealthCheckContext; }; export type HealthCheckContext = HealthCheckContext$instance; export interface HealthCheckPublisherOptions$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckPublisherOptions: never; Delay: TimeSpan; Period: TimeSpan; get Predicate(): Func_2 | null; set Predicate(value: Func_2 | null); Timeout: TimeSpan; } export const HealthCheckPublisherOptions: { new(): HealthCheckPublisherOptions; }; export type HealthCheckPublisherOptions = HealthCheckPublisherOptions$instance; export interface HealthCheckRegistration$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckRegistration: never; get Delay(): Nullable_1; set Delay(value: Nullable_1 | TimeSpan); Factory: Func_2; FailureStatus: HealthStatus; Name: string; get Period(): Nullable_1; set Period(value: Nullable_1 | TimeSpan); readonly Tags: ISet_1; Timeout: TimeSpan; } export const HealthCheckRegistration: { new(name: string, instance: IHealthCheck, failureStatus: Nullable_1, tags: IEnumerable_1 | null): HealthCheckRegistration; new(name: string, instance: IHealthCheck, failureStatus: Nullable_1, tags: IEnumerable_1 | null, timeout: Nullable_1): HealthCheckRegistration; new(name: string, factory: Func_2, failureStatus: Nullable_1, tags: IEnumerable_1 | null): HealthCheckRegistration; new(name: string, factory: Func_2, failureStatus: Nullable_1, tags: IEnumerable_1 | null, timeout: Nullable_1): HealthCheckRegistration; }; export type HealthCheckRegistration = HealthCheckRegistration$instance; export interface HealthCheckService$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckService: never; CheckHealthAsync(cancellationToken?: CancellationToken): Task_1; CheckHealthAsync(predicate: Func_2 | null, cancellationToken?: CancellationToken): Task_1; } export const HealthCheckService: (abstract new() => HealthCheckService) & { }; export type HealthCheckService = HealthCheckService$instance; export interface HealthCheckServiceOptions$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthCheckServiceOptions: never; readonly Registrations: ICollection_1; } export const HealthCheckServiceOptions: { new(): HealthCheckServiceOptions; }; export type HealthCheckServiceOptions = HealthCheckServiceOptions$instance; export interface HealthReport$instance { readonly __tsonic_type_Microsoft_Extensions_Diagnostics_HealthChecks_HealthReport: never; readonly Entries: IReadOnlyDictionary_2; readonly Status: HealthStatus; readonly TotalDuration: TimeSpan; } export const HealthReport: { new(entries: IReadOnlyDictionary_2, totalDuration: TimeSpan): HealthReport; new(entries: IReadOnlyDictionary_2, status: HealthStatus, totalDuration: TimeSpan): HealthReport; }; export type HealthReport = HealthReport$instance;