/**
 * Kubernetes Authentication API
 *
 * Generated from the Kubernetes OpenAPI spec.
 * DO NOT EDIT - regenerate with: bun run generate
 */
import * as Schema from "effect/Schema";
export declare const CreateAuthenticationV1SelfSubjectReviewInput: Schema.Struct<{}>;
export type CreateAuthenticationV1SelfSubjectReviewInput = typeof CreateAuthenticationV1SelfSubjectReviewInput.Type;
export declare const CreateAuthenticationV1SelfSubjectReviewOutput: Schema.Struct<{
    readonly apiVersion: Schema.optional<Schema.String>;
    readonly kind: Schema.optional<Schema.String>;
    readonly metadata: Schema.optional<Schema.Struct<{
        readonly annotations: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly creationTimestamp: Schema.optional<Schema.String>;
        readonly deletionGracePeriodSeconds: Schema.optional<Schema.Number>;
        readonly deletionTimestamp: Schema.optional<Schema.String>;
        readonly finalizers: Schema.optional<Schema.$Array<Schema.String>>;
        readonly generateName: Schema.optional<Schema.String>;
        readonly generation: Schema.optional<Schema.Number>;
        readonly labels: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly managedFields: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly apiVersion: Schema.optional<Schema.String>;
            readonly fieldsType: Schema.optional<Schema.String>;
            readonly fieldsV1: Schema.optional<Schema.Unknown>;
            readonly manager: Schema.optional<Schema.String>;
            readonly operation: Schema.optional<Schema.String>;
            readonly subresource: Schema.optional<Schema.String>;
            readonly time: Schema.optional<Schema.String>;
        }>>>;
        readonly name: Schema.optional<Schema.String>;
        readonly namespace: Schema.optional<Schema.String>;
        readonly ownerReferences: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly apiVersion: Schema.String;
            readonly blockOwnerDeletion: Schema.optional<Schema.Boolean>;
            readonly controller: Schema.optional<Schema.Boolean>;
            readonly kind: Schema.String;
            readonly name: Schema.String;
            readonly uid: Schema.String;
        }>>>;
        readonly resourceVersion: Schema.optional<Schema.String>;
        readonly selfLink: Schema.optional<Schema.String>;
        readonly uid: Schema.optional<Schema.String>;
    }>>;
    readonly status: Schema.optional<Schema.Struct<{
        readonly userInfo: Schema.optional<Schema.Struct<{
            readonly extra: Schema.optional<Schema.$Record<Schema.String, Schema.$Array<Schema.String>>>;
            readonly groups: Schema.optional<Schema.$Array<Schema.String>>;
            readonly uid: Schema.optional<Schema.String>;
            readonly username: Schema.optional<Schema.String>;
        }>>;
    }>>;
}>;
export type CreateAuthenticationV1SelfSubjectReviewOutput = typeof CreateAuthenticationV1SelfSubjectReviewOutput.Type;
/**
 * create a SelfSubjectReview
 */
export declare const createAuthenticationV1SelfSubjectReview: any;
export declare const CreateAuthenticationV1TokenReviewInput: Schema.Struct<{}>;
export type CreateAuthenticationV1TokenReviewInput = typeof CreateAuthenticationV1TokenReviewInput.Type;
export declare const CreateAuthenticationV1TokenReviewOutput: Schema.Struct<{
    readonly apiVersion: Schema.optional<Schema.String>;
    readonly kind: Schema.optional<Schema.String>;
    readonly metadata: Schema.optional<Schema.Struct<{
        readonly annotations: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly creationTimestamp: Schema.optional<Schema.String>;
        readonly deletionGracePeriodSeconds: Schema.optional<Schema.Number>;
        readonly deletionTimestamp: Schema.optional<Schema.String>;
        readonly finalizers: Schema.optional<Schema.$Array<Schema.String>>;
        readonly generateName: Schema.optional<Schema.String>;
        readonly generation: Schema.optional<Schema.Number>;
        readonly labels: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly managedFields: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly apiVersion: Schema.optional<Schema.String>;
            readonly fieldsType: Schema.optional<Schema.String>;
            readonly fieldsV1: Schema.optional<Schema.Unknown>;
            readonly manager: Schema.optional<Schema.String>;
            readonly operation: Schema.optional<Schema.String>;
            readonly subresource: Schema.optional<Schema.String>;
            readonly time: Schema.optional<Schema.String>;
        }>>>;
        readonly name: Schema.optional<Schema.String>;
        readonly namespace: Schema.optional<Schema.String>;
        readonly ownerReferences: Schema.optional<Schema.$Array<Schema.Struct<{
            readonly apiVersion: Schema.String;
            readonly blockOwnerDeletion: Schema.optional<Schema.Boolean>;
            readonly controller: Schema.optional<Schema.Boolean>;
            readonly kind: Schema.String;
            readonly name: Schema.String;
            readonly uid: Schema.String;
        }>>>;
        readonly resourceVersion: Schema.optional<Schema.String>;
        readonly selfLink: Schema.optional<Schema.String>;
        readonly uid: Schema.optional<Schema.String>;
    }>>;
    readonly spec: Schema.Struct<{
        readonly audiences: Schema.optional<Schema.$Array<Schema.String>>;
        readonly token: Schema.String;
    }>;
    readonly status: Schema.optional<Schema.Struct<{
        readonly audiences: Schema.optional<Schema.$Array<Schema.String>>;
        readonly authenticated: Schema.optional<Schema.Boolean>;
        readonly error: Schema.optional<Schema.String>;
        readonly user: Schema.optional<Schema.Struct<{
            readonly extra: Schema.optional<Schema.$Record<Schema.String, Schema.$Array<Schema.String>>>;
            readonly groups: Schema.optional<Schema.$Array<Schema.String>>;
            readonly uid: Schema.optional<Schema.String>;
            readonly username: Schema.optional<Schema.String>;
        }>>;
    }>>;
}>;
export type CreateAuthenticationV1TokenReviewOutput = typeof CreateAuthenticationV1TokenReviewOutput.Type;
/**
 * create a TokenReview
 */
export declare const createAuthenticationV1TokenReview: any;
export declare const GetAuthenticationAPIGroupInput: Schema.Struct<{}>;
export type GetAuthenticationAPIGroupInput = typeof GetAuthenticationAPIGroupInput.Type;
export declare const GetAuthenticationAPIGroupOutput: Schema.Struct<{
    readonly apiVersion: Schema.optional<Schema.String>;
    readonly kind: Schema.optional<Schema.String>;
    readonly name: Schema.String;
    readonly preferredVersion: Schema.optional<Schema.Struct<{
        readonly groupVersion: Schema.String;
        readonly version: Schema.String;
    }>>;
    readonly serverAddressByClientCIDRs: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly clientCIDR: Schema.String;
        readonly serverAddress: Schema.String;
    }>>>;
    readonly versions: Schema.$Array<Schema.Struct<{
        readonly groupVersion: Schema.String;
        readonly version: Schema.String;
    }>>;
}>;
export type GetAuthenticationAPIGroupOutput = typeof GetAuthenticationAPIGroupOutput.Type;
/**
 * get information of a group
 */
export declare const getAuthenticationAPIGroup: any;
export declare const GetAuthenticationV1APIResourcesInput: Schema.Struct<{}>;
export type GetAuthenticationV1APIResourcesInput = typeof GetAuthenticationV1APIResourcesInput.Type;
export declare const GetAuthenticationV1APIResourcesOutput: Schema.Struct<{
    readonly apiVersion: Schema.optional<Schema.String>;
    readonly groupVersion: Schema.String;
    readonly kind: Schema.optional<Schema.String>;
    readonly resources: Schema.$Array<Schema.Struct<{
        readonly categories: Schema.optional<Schema.$Array<Schema.String>>;
        readonly group: Schema.optional<Schema.String>;
        readonly kind: Schema.String;
        readonly name: Schema.String;
        readonly namespaced: Schema.Boolean;
        readonly shortNames: Schema.optional<Schema.$Array<Schema.String>>;
        readonly singularName: Schema.String;
        readonly storageVersionHash: Schema.optional<Schema.String>;
        readonly verbs: Schema.$Array<Schema.String>;
        readonly version: Schema.optional<Schema.String>;
    }>>;
}>;
export type GetAuthenticationV1APIResourcesOutput = typeof GetAuthenticationV1APIResourcesOutput.Type;
/**
 * get available resources
 */
export declare const getAuthenticationV1APIResources: any;
//# sourceMappingURL=authentication.d.ts.map