import Long from "long";
import _m0 from "protobufjs/minimal";
import { Details } from "../../object/v2/object";
export declare const protobufPackage = "zitadel.feature.v2";
export interface SetUserFeatureRequest {
    userId: string;
}
export interface SetUserFeaturesResponse {
    details: Details | undefined;
}
export interface ResetUserFeaturesRequest {
    userId: string;
}
export interface ResetUserFeaturesResponse {
    details: Details | undefined;
}
export interface GetUserFeaturesRequest {
    userId: string;
    inheritance: boolean;
}
export interface GetUserFeaturesResponse {
    details: Details | undefined;
}
export declare const SetUserFeatureRequest: {
    encode(message: SetUserFeatureRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetUserFeatureRequest;
    fromJSON(object: any): SetUserFeatureRequest;
    toJSON(message: SetUserFeatureRequest): unknown;
    create(base?: DeepPartial<SetUserFeatureRequest>): SetUserFeatureRequest;
    fromPartial(object: DeepPartial<SetUserFeatureRequest>): SetUserFeatureRequest;
};
export declare const SetUserFeaturesResponse: {
    encode(message: SetUserFeaturesResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetUserFeaturesResponse;
    fromJSON(object: any): SetUserFeaturesResponse;
    toJSON(message: SetUserFeaturesResponse): unknown;
    create(base?: DeepPartial<SetUserFeaturesResponse>): SetUserFeaturesResponse;
    fromPartial(object: DeepPartial<SetUserFeaturesResponse>): SetUserFeaturesResponse;
};
export declare const ResetUserFeaturesRequest: {
    encode(message: ResetUserFeaturesRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ResetUserFeaturesRequest;
    fromJSON(object: any): ResetUserFeaturesRequest;
    toJSON(message: ResetUserFeaturesRequest): unknown;
    create(base?: DeepPartial<ResetUserFeaturesRequest>): ResetUserFeaturesRequest;
    fromPartial(object: DeepPartial<ResetUserFeaturesRequest>): ResetUserFeaturesRequest;
};
export declare const ResetUserFeaturesResponse: {
    encode(message: ResetUserFeaturesResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ResetUserFeaturesResponse;
    fromJSON(object: any): ResetUserFeaturesResponse;
    toJSON(message: ResetUserFeaturesResponse): unknown;
    create(base?: DeepPartial<ResetUserFeaturesResponse>): ResetUserFeaturesResponse;
    fromPartial(object: DeepPartial<ResetUserFeaturesResponse>): ResetUserFeaturesResponse;
};
export declare const GetUserFeaturesRequest: {
    encode(message: GetUserFeaturesRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetUserFeaturesRequest;
    fromJSON(object: any): GetUserFeaturesRequest;
    toJSON(message: GetUserFeaturesRequest): unknown;
    create(base?: DeepPartial<GetUserFeaturesRequest>): GetUserFeaturesRequest;
    fromPartial(object: DeepPartial<GetUserFeaturesRequest>): GetUserFeaturesRequest;
};
export declare const GetUserFeaturesResponse: {
    encode(message: GetUserFeaturesResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetUserFeaturesResponse;
    fromJSON(object: any): GetUserFeaturesResponse;
    toJSON(message: GetUserFeaturesResponse): unknown;
    create(base?: DeepPartial<GetUserFeaturesResponse>): GetUserFeaturesResponse;
    fromPartial(object: DeepPartial<GetUserFeaturesResponse>): GetUserFeaturesResponse;
};
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export type DeepPartial<T> = T extends Builtin ? T : T extends Long ? string | number | Long : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
export {};
