/**
 * -------------------------------------------------------------------------------------------
 * Copyright (c) Microsoft Corporation.  All Rights Reserved.  Licensed under the MIT License.
 * See License in the project root for license information.
 * -------------------------------------------------------------------------------------------
 */
import { BackingStoreFactory, DateOnly, Duration, type Parsable, type ParsableFactory, type ParseNode, TimeOnly } from "@microsoft/kiota-abstractions";
export declare class FormParseNode implements ParseNode {
    private readonly _rawString;
    private readonly backingStoreFactory?;
    private readonly _fields;
    /**
     *  Creates a new instance of FormParseNode
     * @param _rawString the raw string to parse
     * @param backingStoreFactory the factory to create backing stores
     */
    constructor(_rawString: string, backingStoreFactory?: BackingStoreFactory | undefined);
    private normalizeKey;
    private getStringValueFromRaw;
    private getBooleanValueFromRaw;
    private getNumberValueFromRaw;
    private getGuidValueFromRaw;
    private getDateValueFromRaw;
    private getDateOnlyValueFromRaw;
    private getTimeOnlyValueFromRaw;
    private getDurationValueFromRaw;
    getByteArrayValue(): ArrayBuffer | undefined;
    onBeforeAssignFieldValues: ((value: Parsable) => void) | undefined;
    onAfterAssignFieldValues: ((value: Parsable) => void) | undefined;
    getStringValue: () => string;
    getChildNode: (identifier: string) => ParseNode | undefined;
    getBooleanValue: () => boolean | undefined;
    getNumberValue: () => number;
    getGuidValue: () => string | undefined;
    getDateValue: () => Date;
    getDateOnlyValue: () => DateOnly | undefined;
    getTimeOnlyValue: () => TimeOnly | undefined;
    getDurationValue: () => Duration | undefined;
    getCollectionOfPrimitiveValues: <T>() => T[] | undefined;
    getCollectionOfObjectValues: <T extends Parsable>(parsableFactory: ParsableFactory<T>) => T[] | undefined;
    getObjectValue: <T extends Parsable>(parsableFactory: ParsableFactory<T>) => T;
    getCollectionOfEnumValues: <T>(type: any) => T[];
    getEnumValue: <T>(type: any) => T | undefined;
    private assignFieldValues;
}
//# sourceMappingURL=formParseNode.d.ts.map