import { BinaryReader, BinaryWriter } from "../../../binary";
/**
* AccountAuthenticator represents a foundational model for all authenticators.
* It provides extensibility by allowing concrete types to interpret and
* validate transactions based on the encapsulated data.
*/
export interface AccountAuthenticator {
/** ID uniquely identifies the authenticator instance. */
id: bigint;
/**
* Type specifies the category of the AccountAuthenticator.
* This type information is essential for differentiating authenticators
* and ensuring precise data retrieval from the storage layer.
*/
type: string;
/**
* Data is a versatile field used in conjunction with the specific type of
* account authenticator to facilitate complex authentication processes.
* The interpretation of this field is overloaded, enabling multiple
* authenticators to utilize it for their respective purposes.
*/
data: Uint8Array;
}
export interface AccountAuthenticatorProtoMsg {
typeUrl: "/osmosis.smartaccount.v1beta1.AccountAuthenticator";
value: Uint8Array;
}
/**
* AccountAuthenticator represents a foundational model for all authenticators.
* It provides extensibility by allowing concrete types to interpret and
* validate transactions based on the encapsulated data.
*/
export interface AccountAuthenticatorAmino {
/** ID uniquely identifies the authenticator instance. */
id?: string;
/**
* Type specifies the category of the AccountAuthenticator.
* This type information is essential for differentiating authenticators
* and ensuring precise data retrieval from the storage layer.
*/
type?: string;
/**
* Data is a versatile field used in conjunction with the specific type of
* account authenticator to facilitate complex authentication processes.
* The interpretation of this field is overloaded, enabling multiple
* authenticators to utilize it for their respective purposes.
*/
data?: string;
}
export interface AccountAuthenticatorAminoMsg {
type: "osmosis/smartaccount/account-authenticator";
value: AccountAuthenticatorAmino;
}
/**
* AccountAuthenticator represents a foundational model for all authenticators.
* It provides extensibility by allowing concrete types to interpret and
* validate transactions based on the encapsulated data.
*/
export interface AccountAuthenticatorSDKType {
id: bigint;
type: string;
data: Uint8Array;
}
export declare const AccountAuthenticator: {
typeUrl: string;
aminoType: string;
is(o: any): o is AccountAuthenticator;
isSDK(o: any): o is AccountAuthenticatorSDKType;
isAmino(o: any): o is AccountAuthenticatorAmino;
encode(message: AccountAuthenticator, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): AccountAuthenticator;
fromPartial(object: Partial<AccountAuthenticator>): AccountAuthenticator;
fromAmino(object: AccountAuthenticatorAmino): AccountAuthenticator;
toAmino(message: AccountAuthenticator): AccountAuthenticatorAmino;
fromAminoMsg(object: AccountAuthenticatorAminoMsg): AccountAuthenticator;
toAminoMsg(message: AccountAuthenticator): AccountAuthenticatorAminoMsg;
fromProtoMsg(message: AccountAuthenticatorProtoMsg): AccountAuthenticator;
toProto(message: AccountAuthenticator): Uint8Array;
toProtoMsg(message: AccountAuthenticator): AccountAuthenticatorProtoMsg;
};