import { type AdditionalDataHolder, type BackedModel, type Parsable, type ParseNode, type SerializationWriter } from '@microsoft/kiota-abstractions';
export interface AgentSignIn extends AdditionalDataHolder, BackedModel, Parsable {
    /**
     * The subject's parent object ID. This is either the id of the agentIdentity or agentIdentityBlueprint.
     */
    agentSubjectParentId?: string | null;
    /**
     * The agentSubjectType property
     */
    agentSubjectType?: AgentType | null;
    /**
     * The agentType property
     */
    agentType?: AgentType | null;
    /**
     * Stores model information.
     */
    backingStoreEnabled?: boolean | null;
    /**
     * The OdataType property
     */
    odataType?: string | null;
    /**
     * The appId of the parent agent where the agentType is agentic.
     */
    parentAppId?: string | null;
}
export type AgentType = (typeof AgentTypeObject)[keyof typeof AgentTypeObject];
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AgentSignIn}
 */
export declare function createAgentSignInFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record<string, (node: ParseNode) => void>);
/**
 * The deserialization information for the current model
 * @param AgentSignIn The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
export declare function deserializeIntoAgentSignIn(agentSignIn?: Partial<AgentSignIn> | undefined): Record<string, (node: ParseNode) => void>;
/**
 * Serializes information the current object
 * @param AgentSignIn The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
export declare function serializeAgentSignIn(writer: SerializationWriter, agentSignIn?: Partial<AgentSignIn> | undefined | null, isSerializingDerivedType?: boolean): void;
export declare const AgentTypeObject: {
    readonly NotAgentic: "notAgentic";
    readonly AgenticApp: "agenticApp";
    readonly AgenticAppInstance: "agenticAppInstance";
    readonly AgentIdentityBlueprintPrincipal: "agentIdentityBlueprintPrincipal";
    readonly AgentIDuser: "agentIDuser";
    readonly UnknownFutureValue: "unknownFutureValue";
};
//# sourceMappingURL=index.d.ts.map