UNPKG

@zitadel/node

Version:

Library for API access to ZITADEL. Provides compiled gRPC service clients and helpers for applications and service accounts.

1,532 lines 54.6 kB
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
//   protoc-gen-ts_proto  v2.7.5
//   protoc               unknown
// source: zitadel/session/v2/session.proto
/* eslint-disable */
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import Long from "long";
import { Timestamp } from "../../../google/protobuf/timestamp.js";
import { timestampQueryMethodFromJSON, timestampQueryMethodToJSON } from "../../object.js";
export const protobufPackage = "zitadel.session.v2";
export var SessionFieldName;
(function (SessionFieldName) {
    SessionFieldName[SessionFieldName["SESSION_FIELD_NAME_UNSPECIFIED"] = 0] = "SESSION_FIELD_NAME_UNSPECIFIED";
    SessionFieldName[SessionFieldName["SESSION_FIELD_NAME_CREATION_DATE"] = 1] = "SESSION_FIELD_NAME_CREATION_DATE";
    SessionFieldName[SessionFieldName["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
})(SessionFieldName || (SessionFieldName = {}));
export function sessionFieldNameFromJSON(object) {
    switch (object) {
        case 0:
        case "SESSION_FIELD_NAME_UNSPECIFIED":
            return SessionFieldName.SESSION_FIELD_NAME_UNSPECIFIED;
        case 1:
        case "SESSION_FIELD_NAME_CREATION_DATE":
            return SessionFieldName.SESSION_FIELD_NAME_CREATION_DATE;
        case -1:
        case "UNRECOGNIZED":
        default:
            return SessionFieldName.UNRECOGNIZED;
    }
}
export function sessionFieldNameToJSON(object) {
    switch (object) {
        case SessionFieldName.SESSION_FIELD_NAME_UNSPECIFIED:
            return "SESSION_FIELD_NAME_UNSPECIFIED";
        case SessionFieldName.SESSION_FIELD_NAME_CREATION_DATE:
            return "SESSION_FIELD_NAME_CREATION_DATE";
        case SessionFieldName.UNRECOGNIZED:
        default:
            return "UNRECOGNIZED";
    }
}
function createBaseSession() {
    return {
        id: "",
        creationDate: undefined,
        changeDate: undefined,
        sequence: Long.UZERO,
        factors: undefined,
        metadata: {},
        userAgent: undefined,
        expirationDate: undefined,
    };
}
export const Session = {
    encode(message, writer = new BinaryWriter()) {
        if (message.id !== "") {
            writer.uint32(10).string(message.id);
        }
        if (message.creationDate !== undefined) {
            Timestamp.encode(toTimestamp(message.creationDate), writer.uint32(18).fork()).join();
        }
        if (message.changeDate !== undefined) {
            Timestamp.encode(toTimestamp(message.changeDate), writer.uint32(26).fork()).join();
        }
        if (!message.sequence.equals(Long.UZERO)) {
            writer.uint32(32).uint64(message.sequence.toString());
        }
        if (message.factors !== undefined) {
            Factors.encode(message.factors, writer.uint32(42).fork()).join();
        }
        Object.entries(message.metadata).forEach(([key, value]) => {
            Session_MetadataEntry.encode({ key: key, value }, writer.uint32(50).fork()).join();
        });
        if (message.userAgent !== undefined) {
            UserAgent.encode(message.userAgent, writer.uint32(58).fork()).join();
        }
        if (message.expirationDate !== undefined) {
            Timestamp.encode(toTimestamp(message.expirationDate), writer.uint32(66).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseSession();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.creationDate = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
                case 3: {
                    if (tag !== 26) {
                        break;
                    }
                    message.changeDate = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
                case 4: {
                    if (tag !== 32) {
                        break;
                    }
                    message.sequence = Long.fromString(reader.uint64().toString(), true);
                    continue;
                }
                case 5: {
                    if (tag !== 42) {
                        break;
                    }
                    message.factors = Factors.decode(reader, reader.uint32());
                    continue;
                }
                case 6: {
                    if (tag !== 50) {
                        break;
                    }
                    const entry6 = Session_MetadataEntry.decode(reader, reader.uint32());
                    if (entry6.value !== undefined) {
                        message.metadata[entry6.key] = entry6.value;
                    }
                    continue;
                }
                case 7: {
                    if (tag !== 58) {
                        break;
                    }
                    message.userAgent = UserAgent.decode(reader, reader.uint32());
                    continue;
                }
                case 8: {
                    if (tag !== 66) {
                        break;
                    }
                    message.expirationDate = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            id: isSet(object.id) ? globalThis.String(object.id) : "",
            creationDate: isSet(object.creationDate) ? fromJsonTimestamp(object.creationDate) : undefined,
            changeDate: isSet(object.changeDate) ? fromJsonTimestamp(object.changeDate) : undefined,
            sequence: isSet(object.sequence) ? Long.fromValue(object.sequence) : Long.UZERO,
            factors: isSet(object.factors) ? Factors.fromJSON(object.factors) : undefined,
            metadata: isObject(object.metadata)
                ? Object.entries(object.metadata).reduce((acc, [key, value]) => {
                    acc[key] = Buffer.from(bytesFromBase64(value));
                    return acc;
                }, {})
                : {},
            userAgent: isSet(object.userAgent) ? UserAgent.fromJSON(object.userAgent) : undefined,
            expirationDate: isSet(object.expirationDate) ? fromJsonTimestamp(object.expirationDate) : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== "") {
            obj.id = message.id;
        }
        if (message.creationDate !== undefined) {
            obj.creationDate = message.creationDate.toISOString();
        }
        if (message.changeDate !== undefined) {
            obj.changeDate = message.changeDate.toISOString();
        }
        if (!message.sequence.equals(Long.UZERO)) {
            obj.sequence = (message.sequence || Long.UZERO).toString();
        }
        if (message.factors !== undefined) {
            obj.factors = Factors.toJSON(message.factors);
        }
        if (message.metadata) {
            const entries = Object.entries(message.metadata);
            if (entries.length > 0) {
                obj.metadata = {};
                entries.forEach(([k, v]) => {
                    obj.metadata[k] = base64FromBytes(v);
                });
            }
        }
        if (message.userAgent !== undefined) {
            obj.userAgent = UserAgent.toJSON(message.userAgent);
        }
        if (message.expirationDate !== undefined) {
            obj.expirationDate = message.expirationDate.toISOString();
        }
        return obj;
    },
    create(base) {
        return Session.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseSession();
        message.id = object.id ?? "";
        message.creationDate = object.creationDate ?? undefined;
        message.changeDate = object.changeDate ?? undefined;
        message.sequence = (object.sequence !== undefined && object.sequence !== null)
            ? Long.fromValue(object.sequence)
            : Long.UZERO;
        message.factors = (object.factors !== undefined && object.factors !== null)
            ? Factors.fromPartial(object.factors)
            : undefined;
        message.metadata = Object.entries(object.metadata ?? {}).reduce((acc, [key, value]) => {
            if (value !== undefined) {
                acc[key] = value;
            }
            return acc;
        }, {});
        message.userAgent = (object.userAgent !== undefined && object.userAgent !== null)
            ? UserAgent.fromPartial(object.userAgent)
            : undefined;
        message.expirationDate = object.expirationDate ?? undefined;
        return message;
    },
};
function createBaseSession_MetadataEntry() {
    return { key: "", value: Buffer.alloc(0) };
}
export const Session_MetadataEntry = {
    encode(message, writer = new BinaryWriter()) {
        if (message.key !== "") {
            writer.uint32(10).string(message.key);
        }
        if (message.value.length !== 0) {
            writer.uint32(18).bytes(message.value);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseSession_MetadataEntry();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.key = reader.string();
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.value = Buffer.from(reader.bytes());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            key: isSet(object.key) ? globalThis.String(object.key) : "",
            value: isSet(object.value) ? Buffer.from(bytesFromBase64(object.value)) : Buffer.alloc(0),
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.key !== "") {
            obj.key = message.key;
        }
        if (message.value.length !== 0) {
            obj.value = base64FromBytes(message.value);
        }
        return obj;
    },
    create(base) {
        return Session_MetadataEntry.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseSession_MetadataEntry();
        message.key = object.key ?? "";
        message.value = object.value ?? Buffer.alloc(0);
        return message;
    },
};
function createBaseFactors() {
    return {
        user: undefined,
        password: undefined,
        webAuthN: undefined,
        intent: undefined,
        totp: undefined,
        otpSms: undefined,
        otpEmail: undefined,
    };
}
export const Factors = {
    encode(message, writer = new BinaryWriter()) {
        if (message.user !== undefined) {
            UserFactor.encode(message.user, writer.uint32(10).fork()).join();
        }
        if (message.password !== undefined) {
            PasswordFactor.encode(message.password, writer.uint32(18).fork()).join();
        }
        if (message.webAuthN !== undefined) {
            WebAuthNFactor.encode(message.webAuthN, writer.uint32(26).fork()).join();
        }
        if (message.intent !== undefined) {
            IntentFactor.encode(message.intent, writer.uint32(34).fork()).join();
        }
        if (message.totp !== undefined) {
            TOTPFactor.encode(message.totp, writer.uint32(42).fork()).join();
        }
        if (message.otpSms !== undefined) {
            OTPFactor.encode(message.otpSms, writer.uint32(50).fork()).join();
        }
        if (message.otpEmail !== undefined) {
            OTPFactor.encode(message.otpEmail, writer.uint32(58).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseFactors();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.user = UserFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.password = PasswordFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 3: {
                    if (tag !== 26) {
                        break;
                    }
                    message.webAuthN = WebAuthNFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 4: {
                    if (tag !== 34) {
                        break;
                    }
                    message.intent = IntentFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 5: {
                    if (tag !== 42) {
                        break;
                    }
                    message.totp = TOTPFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 6: {
                    if (tag !== 50) {
                        break;
                    }
                    message.otpSms = OTPFactor.decode(reader, reader.uint32());
                    continue;
                }
                case 7: {
                    if (tag !== 58) {
                        break;
                    }
                    message.otpEmail = OTPFactor.decode(reader, reader.uint32());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            user: isSet(object.user) ? UserFactor.fromJSON(object.user) : undefined,
            password: isSet(object.password) ? PasswordFactor.fromJSON(object.password) : undefined,
            webAuthN: isSet(object.webAuthN) ? WebAuthNFactor.fromJSON(object.webAuthN) : undefined,
            intent: isSet(object.intent) ? IntentFactor.fromJSON(object.intent) : undefined,
            totp: isSet(object.totp) ? TOTPFactor.fromJSON(object.totp) : undefined,
            otpSms: isSet(object.otpSms) ? OTPFactor.fromJSON(object.otpSms) : undefined,
            otpEmail: isSet(object.otpEmail) ? OTPFactor.fromJSON(object.otpEmail) : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.user !== undefined) {
            obj.user = UserFactor.toJSON(message.user);
        }
        if (message.password !== undefined) {
            obj.password = PasswordFactor.toJSON(message.password);
        }
        if (message.webAuthN !== undefined) {
            obj.webAuthN = WebAuthNFactor.toJSON(message.webAuthN);
        }
        if (message.intent !== undefined) {
            obj.intent = IntentFactor.toJSON(message.intent);
        }
        if (message.totp !== undefined) {
            obj.totp = TOTPFactor.toJSON(message.totp);
        }
        if (message.otpSms !== undefined) {
            obj.otpSms = OTPFactor.toJSON(message.otpSms);
        }
        if (message.otpEmail !== undefined) {
            obj.otpEmail = OTPFactor.toJSON(message.otpEmail);
        }
        return obj;
    },
    create(base) {
        return Factors.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseFactors();
        message.user = (object.user !== undefined && object.user !== null)
            ? UserFactor.fromPartial(object.user)
            : undefined;
        message.password = (object.password !== undefined && object.password !== null)
            ? PasswordFactor.fromPartial(object.password)
            : undefined;
        message.webAuthN = (object.webAuthN !== undefined && object.webAuthN !== null)
            ? WebAuthNFactor.fromPartial(object.webAuthN)
            : undefined;
        message.intent = (object.intent !== undefined && object.intent !== null)
            ? IntentFactor.fromPartial(object.intent)
            : undefined;
        message.totp = (object.totp !== undefined && object.totp !== null)
            ? TOTPFactor.fromPartial(object.totp)
            : undefined;
        message.otpSms = (object.otpSms !== undefined && object.otpSms !== null)
            ? OTPFactor.fromPartial(object.otpSms)
            : undefined;
        message.otpEmail = (object.otpEmail !== undefined && object.otpEmail !== null)
            ? OTPFactor.fromPartial(object.otpEmail)
            : undefined;
        return message;
    },
};
function createBaseUserFactor() {
    return { verifiedAt: undefined, id: "", loginName: "", displayName: "", organizationId: "" };
}
export const UserFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        if (message.id !== "") {
            writer.uint32(18).string(message.id);
        }
        if (message.loginName !== "") {
            writer.uint32(26).string(message.loginName);
        }
        if (message.displayName !== "") {
            writer.uint32(34).string(message.displayName);
        }
        if (message.organizationId !== "") {
            writer.uint32(50).string(message.organizationId);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                }
                case 3: {
                    if (tag !== 26) {
                        break;
                    }
                    message.loginName = reader.string();
                    continue;
                }
                case 4: {
                    if (tag !== 34) {
                        break;
                    }
                    message.displayName = reader.string();
                    continue;
                }
                case 6: {
                    if (tag !== 50) {
                        break;
                    }
                    message.organizationId = reader.string();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined,
            id: isSet(object.id) ? globalThis.String(object.id) : "",
            loginName: isSet(object.loginName) ? globalThis.String(object.loginName) : "",
            displayName: isSet(object.displayName) ? globalThis.String(object.displayName) : "",
            organizationId: isSet(object.organizationId) ? globalThis.String(object.organizationId) : "",
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        if (message.id !== "") {
            obj.id = message.id;
        }
        if (message.loginName !== "") {
            obj.loginName = message.loginName;
        }
        if (message.displayName !== "") {
            obj.displayName = message.displayName;
        }
        if (message.organizationId !== "") {
            obj.organizationId = message.organizationId;
        }
        return obj;
    },
    create(base) {
        return UserFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        message.id = object.id ?? "";
        message.loginName = object.loginName ?? "";
        message.displayName = object.displayName ?? "";
        message.organizationId = object.organizationId ?? "";
        return message;
    },
};
function createBasePasswordFactor() {
    return { verifiedAt: undefined };
}
export const PasswordFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBasePasswordFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        return obj;
    },
    create(base) {
        return PasswordFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBasePasswordFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        return message;
    },
};
function createBaseIntentFactor() {
    return { verifiedAt: undefined };
}
export const IntentFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseIntentFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        return obj;
    },
    create(base) {
        return IntentFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseIntentFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        return message;
    },
};
function createBaseWebAuthNFactor() {
    return { verifiedAt: undefined, userVerified: false };
}
export const WebAuthNFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        if (message.userVerified !== false) {
            writer.uint32(16).bool(message.userVerified);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseWebAuthNFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
                case 2: {
                    if (tag !== 16) {
                        break;
                    }
                    message.userVerified = reader.bool();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined,
            userVerified: isSet(object.userVerified) ? globalThis.Boolean(object.userVerified) : false,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        if (message.userVerified !== false) {
            obj.userVerified = message.userVerified;
        }
        return obj;
    },
    create(base) {
        return WebAuthNFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseWebAuthNFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        message.userVerified = object.userVerified ?? false;
        return message;
    },
};
function createBaseTOTPFactor() {
    return { verifiedAt: undefined };
}
export const TOTPFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseTOTPFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        return obj;
    },
    create(base) {
        return TOTPFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseTOTPFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        return message;
    },
};
function createBaseOTPFactor() {
    return { verifiedAt: undefined };
}
export const OTPFactor = {
    encode(message, writer = new BinaryWriter()) {
        if (message.verifiedAt !== undefined) {
            Timestamp.encode(toTimestamp(message.verifiedAt), writer.uint32(10).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseOTPFactor();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.verifiedAt = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { verifiedAt: isSet(object.verifiedAt) ? fromJsonTimestamp(object.verifiedAt) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.verifiedAt !== undefined) {
            obj.verifiedAt = message.verifiedAt.toISOString();
        }
        return obj;
    },
    create(base) {
        return OTPFactor.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseOTPFactor();
        message.verifiedAt = object.verifiedAt ?? undefined;
        return message;
    },
};
function createBaseSearchQuery() {
    return {
        idsQuery: undefined,
        userIdQuery: undefined,
        creationDateQuery: undefined,
        creatorQuery: undefined,
        userAgentQuery: undefined,
    };
}
export const SearchQuery = {
    encode(message, writer = new BinaryWriter()) {
        if (message.idsQuery !== undefined) {
            IDsQuery.encode(message.idsQuery, writer.uint32(10).fork()).join();
        }
        if (message.userIdQuery !== undefined) {
            UserIDQuery.encode(message.userIdQuery, writer.uint32(18).fork()).join();
        }
        if (message.creationDateQuery !== undefined) {
            CreationDateQuery.encode(message.creationDateQuery, writer.uint32(26).fork()).join();
        }
        if (message.creatorQuery !== undefined) {
            CreatorQuery.encode(message.creatorQuery, writer.uint32(34).fork()).join();
        }
        if (message.userAgentQuery !== undefined) {
            UserAgentQuery.encode(message.userAgentQuery, writer.uint32(42).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseSearchQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.idsQuery = IDsQuery.decode(reader, reader.uint32());
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.userIdQuery = UserIDQuery.decode(reader, reader.uint32());
                    continue;
                }
                case 3: {
                    if (tag !== 26) {
                        break;
                    }
                    message.creationDateQuery = CreationDateQuery.decode(reader, reader.uint32());
                    continue;
                }
                case 4: {
                    if (tag !== 34) {
                        break;
                    }
                    message.creatorQuery = CreatorQuery.decode(reader, reader.uint32());
                    continue;
                }
                case 5: {
                    if (tag !== 42) {
                        break;
                    }
                    message.userAgentQuery = UserAgentQuery.decode(reader, reader.uint32());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            idsQuery: isSet(object.idsQuery) ? IDsQuery.fromJSON(object.idsQuery) : undefined,
            userIdQuery: isSet(object.userIdQuery) ? UserIDQuery.fromJSON(object.userIdQuery) : undefined,
            creationDateQuery: isSet(object.creationDateQuery)
                ? CreationDateQuery.fromJSON(object.creationDateQuery)
                : undefined,
            creatorQuery: isSet(object.creatorQuery) ? CreatorQuery.fromJSON(object.creatorQuery) : undefined,
            userAgentQuery: isSet(object.userAgentQuery) ? UserAgentQuery.fromJSON(object.userAgentQuery) : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.idsQuery !== undefined) {
            obj.idsQuery = IDsQuery.toJSON(message.idsQuery);
        }
        if (message.userIdQuery !== undefined) {
            obj.userIdQuery = UserIDQuery.toJSON(message.userIdQuery);
        }
        if (message.creationDateQuery !== undefined) {
            obj.creationDateQuery = CreationDateQuery.toJSON(message.creationDateQuery);
        }
        if (message.creatorQuery !== undefined) {
            obj.creatorQuery = CreatorQuery.toJSON(message.creatorQuery);
        }
        if (message.userAgentQuery !== undefined) {
            obj.userAgentQuery = UserAgentQuery.toJSON(message.userAgentQuery);
        }
        return obj;
    },
    create(base) {
        return SearchQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseSearchQuery();
        message.idsQuery = (object.idsQuery !== undefined && object.idsQuery !== null)
            ? IDsQuery.fromPartial(object.idsQuery)
            : undefined;
        message.userIdQuery = (object.userIdQuery !== undefined && object.userIdQuery !== null)
            ? UserIDQuery.fromPartial(object.userIdQuery)
            : undefined;
        message.creationDateQuery = (object.creationDateQuery !== undefined && object.creationDateQuery !== null)
            ? CreationDateQuery.fromPartial(object.creationDateQuery)
            : undefined;
        message.creatorQuery = (object.creatorQuery !== undefined && object.creatorQuery !== null)
            ? CreatorQuery.fromPartial(object.creatorQuery)
            : undefined;
        message.userAgentQuery = (object.userAgentQuery !== undefined && object.userAgentQuery !== null)
            ? UserAgentQuery.fromPartial(object.userAgentQuery)
            : undefined;
        return message;
    },
};
function createBaseIDsQuery() {
    return { ids: [] };
}
export const IDsQuery = {
    encode(message, writer = new BinaryWriter()) {
        for (const v of message.ids) {
            writer.uint32(10).string(v);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseIDsQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.ids.push(reader.string());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { ids: globalThis.Array.isArray(object?.ids) ? object.ids.map((e) => globalThis.String(e)) : [] };
    },
    toJSON(message) {
        const obj = {};
        if (message.ids?.length) {
            obj.ids = message.ids;
        }
        return obj;
    },
    create(base) {
        return IDsQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseIDsQuery();
        message.ids = object.ids?.map((e) => e) || [];
        return message;
    },
};
function createBaseUserIDQuery() {
    return { id: "" };
}
export const UserIDQuery = {
    encode(message, writer = new BinaryWriter()) {
        if (message.id !== "") {
            writer.uint32(10).string(message.id);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserIDQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { id: isSet(object.id) ? globalThis.String(object.id) : "" };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== "") {
            obj.id = message.id;
        }
        return obj;
    },
    create(base) {
        return UserIDQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserIDQuery();
        message.id = object.id ?? "";
        return message;
    },
};
function createBaseCreationDateQuery() {
    return { creationDate: undefined, method: 0 };
}
export const CreationDateQuery = {
    encode(message, writer = new BinaryWriter()) {
        if (message.creationDate !== undefined) {
            Timestamp.encode(toTimestamp(message.creationDate), writer.uint32(10).fork()).join();
        }
        if (message.method !== 0) {
            writer.uint32(16).int32(message.method);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseCreationDateQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.creationDate = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
                    continue;
                }
                case 2: {
                    if (tag !== 16) {
                        break;
                    }
                    message.method = reader.int32();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            creationDate: isSet(object.creationDate) ? fromJsonTimestamp(object.creationDate) : undefined,
            method: isSet(object.method) ? timestampQueryMethodFromJSON(object.method) : 0,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.creationDate !== undefined) {
            obj.creationDate = message.creationDate.toISOString();
        }
        if (message.method !== 0) {
            obj.method = timestampQueryMethodToJSON(message.method);
        }
        return obj;
    },
    create(base) {
        return CreationDateQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseCreationDateQuery();
        message.creationDate = object.creationDate ?? undefined;
        message.method = object.method ?? 0;
        return message;
    },
};
function createBaseCreatorQuery() {
    return { id: undefined };
}
export const CreatorQuery = {
    encode(message, writer = new BinaryWriter()) {
        if (message.id !== undefined) {
            writer.uint32(10).string(message.id);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseCreatorQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.id = reader.string();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { id: isSet(object.id) ? globalThis.String(object.id) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.id !== undefined) {
            obj.id = message.id;
        }
        return obj;
    },
    create(base) {
        return CreatorQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseCreatorQuery();
        message.id = object.id ?? undefined;
        return message;
    },
};
function createBaseUserAgentQuery() {
    return { fingerprintId: undefined };
}
export const UserAgentQuery = {
    encode(message, writer = new BinaryWriter()) {
        if (message.fingerprintId !== undefined) {
            writer.uint32(10).string(message.fingerprintId);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserAgentQuery();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.fingerprintId = reader.string();
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return { fingerprintId: isSet(object.fingerprintId) ? globalThis.String(object.fingerprintId) : undefined };
    },
    toJSON(message) {
        const obj = {};
        if (message.fingerprintId !== undefined) {
            obj.fingerprintId = message.fingerprintId;
        }
        return obj;
    },
    create(base) {
        return UserAgentQuery.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserAgentQuery();
        message.fingerprintId = object.fingerprintId ?? undefined;
        return message;
    },
};
function createBaseUserAgent() {
    return { fingerprintId: undefined, ip: undefined, description: undefined, header: {} };
}
export const UserAgent = {
    encode(message, writer = new BinaryWriter()) {
        if (message.fingerprintId !== undefined) {
            writer.uint32(10).string(message.fingerprintId);
        }
        if (message.ip !== undefined) {
            writer.uint32(18).string(message.ip);
        }
        if (message.description !== undefined) {
            writer.uint32(26).string(message.description);
        }
        Object.entries(message.header).forEach(([key, value]) => {
            UserAgent_HeaderEntry.encode({ key: key, value }, writer.uint32(34).fork()).join();
        });
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserAgent();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.fingerprintId = reader.string();
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.ip = reader.string();
                    continue;
                }
                case 3: {
                    if (tag !== 26) {
                        break;
                    }
                    message.description = reader.string();
                    continue;
                }
                case 4: {
                    if (tag !== 34) {
                        break;
                    }
                    const entry4 = UserAgent_HeaderEntry.decode(reader, reader.uint32());
                    if (entry4.value !== undefined) {
                        message.header[entry4.key] = entry4.value;
                    }
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            fingerprintId: isSet(object.fingerprintId) ? globalThis.String(object.fingerprintId) : undefined,
            ip: isSet(object.ip) ? globalThis.String(object.ip) : undefined,
            description: isSet(object.description) ? globalThis.String(object.description) : undefined,
            header: isObject(object.header)
                ? Object.entries(object.header).reduce((acc, [key, value]) => {
                    acc[key] = UserAgent_HeaderValues.fromJSON(value);
                    return acc;
                }, {})
                : {},
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.fingerprintId !== undefined) {
            obj.fingerprintId = message.fingerprintId;
        }
        if (message.ip !== undefined) {
            obj.ip = message.ip;
        }
        if (message.description !== undefined) {
            obj.description = message.description;
        }
        if (message.header) {
            const entries = Object.entries(message.header);
            if (entries.length > 0) {
                obj.header = {};
                entries.forEach(([k, v]) => {
                    obj.header[k] = UserAgent_HeaderValues.toJSON(v);
                });
            }
        }
        return obj;
    },
    create(base) {
        return UserAgent.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserAgent();
        message.fingerprintId = object.fingerprintId ?? undefined;
        message.ip = object.ip ?? undefined;
        message.description = object.description ?? undefined;
        message.header = Object.entries(object.header ?? {}).reduce((acc, [key, value]) => {
            if (value !== undefined) {
                acc[key] = UserAgent_HeaderValues.fromPartial(value);
            }
            return acc;
        }, {});
        return message;
    },
};
function createBaseUserAgent_HeaderValues() {
    return { values: [] };
}
export const UserAgent_HeaderValues = {
    encode(message, writer = new BinaryWriter()) {
        for (const v of message.values) {
            writer.uint32(10).string(v);
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserAgent_HeaderValues();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.values.push(reader.string());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            values: globalThis.Array.isArray(object?.values) ? object.values.map((e) => globalThis.String(e)) : [],
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.values?.length) {
            obj.values = message.values;
        }
        return obj;
    },
    create(base) {
        return UserAgent_HeaderValues.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserAgent_HeaderValues();
        message.values = object.values?.map((e) => e) || [];
        return message;
    },
};
function createBaseUserAgent_HeaderEntry() {
    return { key: "", value: undefined };
}
export const UserAgent_HeaderEntry = {
    encode(message, writer = new BinaryWriter()) {
        if (message.key !== "") {
            writer.uint32(10).string(message.key);
        }
        if (message.value !== undefined) {
            UserAgent_HeaderValues.encode(message.value, writer.uint32(18).fork()).join();
        }
        return writer;
    },
    decode(input, length) {
        const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
        const end = length === undefined ? reader.len : reader.pos + length;
        const message = createBaseUserAgent_HeaderEntry();
        while (reader.pos < end) {
            const tag = reader.uint32();
            switch (tag >>> 3) {
                case 1: {
                    if (tag !== 10) {
                        break;
                    }
                    message.key = reader.string();
                    continue;
                }
                case 2: {
                    if (tag !== 18) {
                        break;
                    }
                    message.value = UserAgent_HeaderValues.decode(reader, reader.uint32());
                    continue;
                }
            }
            if ((tag & 7) === 4 || tag === 0) {
                break;
            }
            reader.skip(tag & 7);
        }
        return message;
    },
    fromJSON(object) {
        return {
            key: isSet(object.key) ? globalThis.String(object.key) : "",
            value: isSet(object.value) ? UserAgent_HeaderValues.fromJSON(object.value) : undefined,
        };
    },
    toJSON(message) {
        const obj = {};
        if (message.key !== "") {
            obj.key = message.key;
        }
        if (message.value !== undefined) {
            obj.value = UserAgent_HeaderValues.toJSON(message.value);
        }
        return obj;
    },
    create(base) {
        return UserAgent_HeaderEntry.fromPartial(base ?? {});
    },
    fromPartial(object) {
        const message = createBaseUserAgent_HeaderEntry();
        message.key = object.key ?? "";
        message.value = (object.value !== undefined && object.value !== null)
            ? UserAgent_HeaderValues.fromPartial(object.value)
            : undefined;
        return message;
    },
};
function bytesFromBase64(b64) {
    return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
}
function base64FromBytes(arr) {
    return globalThis.Buffer.from(arr).toString("base64");
}
function toTimestamp(date) {
    const seconds = numberToLong(Math.trunc(date.getTime() / 1_000));
    const nanos = (date.getTime() % 1_000) * 1_000_000;
    return { seconds, nanos };
}
function fromTimestamp(t) {
    let millis = (t.seconds.toNumber() || 0) * 1_000;
    millis += (t.nanos || 0) / 1_000_000;
    return new globalThis.Date(millis);
}
function fromJsonTimestamp(o) {
    if (o instanceof globalThis.Date) {
        return o;
    }
    else if (typeof o === "string") {
        return new globalThis.Date(o);
    }
    else {
        return fromTimestamp(Timestamp.fromJSON(o));
    }
}
function numberToLong(number) {
    return Long.fromNumber(number);
}
function isObject(value) {
    return typeof value === "object" && value !== null;
}
function isSet(value) {
    return value !== null && value !== undefined;
}