import * as IO from "../../helpers/io.js";
import { AppRecord } from "../recordTypes/appRecord.js";
import { EntityRecord } from "../recordTypes/entityRecord.js";
import { ServerCredentialsRecord } from "../recordTypes/serverCredentialsRecord.js";
declare const RAuthenticationStateRaw: IO.Type<{
    readonly entityRecord: EntityRecord;
    readonly appRecord: AppRecord;
    readonly credentialsRecord: ServerCredentialsRecord;
    readonly serverPublicKey: Uint8Array<ArrayBufferLike> | undefined;
    readonly authorizationId: string | undefined;
}, any, any>;
export interface AuthenticationState extends IO.TypeOf<typeof RAuthenticationStateRaw> {
}
export declare const RAuthenticationState: IO.Type<AuthenticationState, any, unknown>;
export declare const AuthenticationState: {
    decode: (value: unknown) => AuthenticationState;
    decodeJSON: (value: string) => AuthenticationState;
    encode: (state: AuthenticationState) => any;
    encodeJSON: (state: AuthenticationState) => string;
};
export {};
