import { Context, Ref } from "effect";
declare const ServiceInspectState_base: Context.TagClass<ServiceInspectState, "ServiceInspectState", Ref.Ref<readonly {
    readonly ID: string;
    readonly Version: {
        readonly Index: number;
    };
    readonly CreatedAt: string;
    readonly UpdatedAt: string;
    readonly Spec?: {
        readonly Name?: string | undefined;
        readonly Labels: {
            readonly [x: string]: string;
        };
        readonly TaskTemplate?: {
            readonly ContainerSpec?: {
                readonly Labels: {
                    readonly [x: string]: string;
                };
                readonly Image: string;
                readonly Args?: readonly string[] | undefined;
                readonly Privileges?: {
                    readonly CredentialSpec?: string | null | undefined;
                    readonly SELinuxContext?: string | null | undefined;
                    readonly NoNewPrivileges?: boolean | undefined;
                } | undefined;
                readonly Mounts?: readonly {
                    readonly Type?: string | undefined;
                    readonly Source?: string | undefined;
                    readonly Target?: string | undefined;
                }[] | undefined;
                readonly StopGracePeriod?: number | undefined;
                readonly DNSConfig?: any;
                readonly Isolation?: string | undefined;
            } | undefined;
            readonly Resources?: {
                readonly Limits?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
                readonly Reservations?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
            } | undefined;
            readonly RestartPolicy?: {
                readonly Condition?: string | undefined;
                readonly Delay?: number | undefined;
                readonly MaxAttempts?: number | undefined;
            } | undefined;
            readonly Placement?: {
                readonly Constraints?: readonly string[] | undefined;
                readonly Preferences?: readonly any[] | undefined;
                readonly Platforms?: readonly any[] | undefined;
            } | undefined;
            readonly Networks?: readonly {
                readonly Target: string;
                readonly Aliases?: readonly string[] | undefined;
            }[] | undefined;
            readonly ForceUpdate?: number | undefined;
            readonly Runtime?: string | undefined;
        } | undefined;
        readonly Networks?: readonly {
            readonly Target: string;
            readonly Aliases?: readonly string[] | undefined;
        }[] | undefined;
        readonly Mode: {
            readonly Global: {};
        } | {
            readonly Replicated: {
                readonly Replicas: number;
            };
        };
        readonly UpdateConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly RollbackConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly EndpointSpec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
    } | undefined;
    readonly PreviousSpec?: {
        readonly Name?: string | undefined;
        readonly Labels: {
            readonly [x: string]: string;
        };
        readonly TaskTemplate?: {
            readonly ContainerSpec?: {
                readonly Labels: {
                    readonly [x: string]: string;
                };
                readonly Image: string;
                readonly Args?: readonly string[] | undefined;
                readonly Privileges?: {
                    readonly CredentialSpec?: string | null | undefined;
                    readonly SELinuxContext?: string | null | undefined;
                    readonly NoNewPrivileges?: boolean | undefined;
                } | undefined;
                readonly Mounts?: readonly {
                    readonly Type?: string | undefined;
                    readonly Source?: string | undefined;
                    readonly Target?: string | undefined;
                }[] | undefined;
                readonly StopGracePeriod?: number | undefined;
                readonly DNSConfig?: any;
                readonly Isolation?: string | undefined;
            } | undefined;
            readonly Resources?: {
                readonly Limits?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
                readonly Reservations?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
            } | undefined;
            readonly RestartPolicy?: {
                readonly Condition?: string | undefined;
                readonly Delay?: number | undefined;
                readonly MaxAttempts?: number | undefined;
            } | undefined;
            readonly Placement?: {
                readonly Constraints?: readonly string[] | undefined;
                readonly Preferences?: readonly any[] | undefined;
                readonly Platforms?: readonly any[] | undefined;
            } | undefined;
            readonly Networks?: readonly {
                readonly Target: string;
                readonly Aliases?: readonly string[] | undefined;
            }[] | undefined;
            readonly ForceUpdate?: number | undefined;
            readonly Runtime?: string | undefined;
        } | undefined;
        readonly Networks?: readonly {
            readonly Target: string;
            readonly Aliases?: readonly string[] | undefined;
        }[] | undefined;
        readonly Mode: {
            readonly Global: {};
        } | {
            readonly Replicated: {
                readonly Replicas: number;
            };
        };
        readonly UpdateConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly RollbackConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly EndpointSpec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
    } | undefined;
    readonly Endpoint?: {
        readonly Spec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
        readonly Ports?: readonly {
            readonly Name?: string | undefined;
            readonly Protocol?: string | undefined;
            readonly TargetPort: number;
            readonly PublishedPort?: number | undefined;
            readonly PublishMode?: string | undefined;
        }[] | undefined;
        readonly VirtualIPs?: readonly {
            readonly NetworkID: string;
            readonly Addr: string;
        }[] | undefined;
    } | undefined;
    readonly UpdateStatus?: {
        readonly State?: string | undefined;
        readonly StartedAt?: string | undefined;
        readonly CompletedAt?: string | undefined;
        readonly Message?: string | undefined;
    } | undefined;
}[]>>;
export declare class ServiceInspectState extends ServiceInspectState_base {
}
export declare const initialState: import("effect/Effect").Effect<Ref.Ref<readonly {
    readonly ID: string;
    readonly Version: {
        readonly Index: number;
    };
    readonly CreatedAt: string;
    readonly UpdatedAt: string;
    readonly Spec?: {
        readonly Name?: string | undefined;
        readonly Labels: {
            readonly [x: string]: string;
        };
        readonly TaskTemplate?: {
            readonly ContainerSpec?: {
                readonly Labels: {
                    readonly [x: string]: string;
                };
                readonly Image: string;
                readonly Args?: readonly string[] | undefined;
                readonly Privileges?: {
                    readonly CredentialSpec?: string | null | undefined;
                    readonly SELinuxContext?: string | null | undefined;
                    readonly NoNewPrivileges?: boolean | undefined;
                } | undefined;
                readonly Mounts?: readonly {
                    readonly Type?: string | undefined;
                    readonly Source?: string | undefined;
                    readonly Target?: string | undefined;
                }[] | undefined;
                readonly StopGracePeriod?: number | undefined;
                readonly DNSConfig?: any;
                readonly Isolation?: string | undefined;
            } | undefined;
            readonly Resources?: {
                readonly Limits?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
                readonly Reservations?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
            } | undefined;
            readonly RestartPolicy?: {
                readonly Condition?: string | undefined;
                readonly Delay?: number | undefined;
                readonly MaxAttempts?: number | undefined;
            } | undefined;
            readonly Placement?: {
                readonly Constraints?: readonly string[] | undefined;
                readonly Preferences?: readonly any[] | undefined;
                readonly Platforms?: readonly any[] | undefined;
            } | undefined;
            readonly Networks?: readonly {
                readonly Target: string;
                readonly Aliases?: readonly string[] | undefined;
            }[] | undefined;
            readonly ForceUpdate?: number | undefined;
            readonly Runtime?: string | undefined;
        } | undefined;
        readonly Networks?: readonly {
            readonly Target: string;
            readonly Aliases?: readonly string[] | undefined;
        }[] | undefined;
        readonly Mode: {
            readonly Global: {};
        } | {
            readonly Replicated: {
                readonly Replicas: number;
            };
        };
        readonly UpdateConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly RollbackConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly EndpointSpec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
    } | undefined;
    readonly PreviousSpec?: {
        readonly Name?: string | undefined;
        readonly Labels: {
            readonly [x: string]: string;
        };
        readonly TaskTemplate?: {
            readonly ContainerSpec?: {
                readonly Labels: {
                    readonly [x: string]: string;
                };
                readonly Image: string;
                readonly Args?: readonly string[] | undefined;
                readonly Privileges?: {
                    readonly CredentialSpec?: string | null | undefined;
                    readonly SELinuxContext?: string | null | undefined;
                    readonly NoNewPrivileges?: boolean | undefined;
                } | undefined;
                readonly Mounts?: readonly {
                    readonly Type?: string | undefined;
                    readonly Source?: string | undefined;
                    readonly Target?: string | undefined;
                }[] | undefined;
                readonly StopGracePeriod?: number | undefined;
                readonly DNSConfig?: any;
                readonly Isolation?: string | undefined;
            } | undefined;
            readonly Resources?: {
                readonly Limits?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
                readonly Reservations?: {
                    readonly NanoCPUs?: number | undefined;
                    readonly MemoryBytes?: number | undefined;
                } | undefined;
            } | undefined;
            readonly RestartPolicy?: {
                readonly Condition?: string | undefined;
                readonly Delay?: number | undefined;
                readonly MaxAttempts?: number | undefined;
            } | undefined;
            readonly Placement?: {
                readonly Constraints?: readonly string[] | undefined;
                readonly Preferences?: readonly any[] | undefined;
                readonly Platforms?: readonly any[] | undefined;
            } | undefined;
            readonly Networks?: readonly {
                readonly Target: string;
                readonly Aliases?: readonly string[] | undefined;
            }[] | undefined;
            readonly ForceUpdate?: number | undefined;
            readonly Runtime?: string | undefined;
        } | undefined;
        readonly Networks?: readonly {
            readonly Target: string;
            readonly Aliases?: readonly string[] | undefined;
        }[] | undefined;
        readonly Mode: {
            readonly Global: {};
        } | {
            readonly Replicated: {
                readonly Replicas: number;
            };
        };
        readonly UpdateConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly RollbackConfig?: {
            readonly Parallelism?: number | undefined;
            readonly FailureAction?: string | undefined;
            readonly Monitor?: number | undefined;
            readonly MaxFailureRatio?: number | undefined;
            readonly Order?: string | undefined;
        } | undefined;
        readonly EndpointSpec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
    } | undefined;
    readonly Endpoint?: {
        readonly Spec?: {
            readonly Mode?: string | undefined;
            readonly Ports?: readonly {
                readonly Name?: string | undefined;
                readonly Protocol?: string | undefined;
                readonly TargetPort: number;
                readonly PublishedPort?: number | undefined;
                readonly PublishMode?: string | undefined;
            }[] | undefined;
        } | undefined;
        readonly Ports?: readonly {
            readonly Name?: string | undefined;
            readonly Protocol?: string | undefined;
            readonly TargetPort: number;
            readonly PublishedPort?: number | undefined;
            readonly PublishMode?: string | undefined;
        }[] | undefined;
        readonly VirtualIPs?: readonly {
            readonly NetworkID: string;
            readonly Addr: string;
        }[] | undefined;
    } | undefined;
    readonly UpdateStatus?: {
        readonly State?: string | undefined;
        readonly StartedAt?: string | undefined;
        readonly CompletedAt?: string | undefined;
        readonly Message?: string | undefined;
    } | undefined;
}[]>, never, never>;
export {};
