import ProtocolEnum from '../enum/ProtocolEnum.js';
/**
 *
 * The Resource Locator is a way for the nanotdf to represent references to external resources in as succinct a format
 * as possible.
 *
 * | Section       | Minimum Length (B) | Maximum Length (B) |
 * |---------------|--------------------|--------------------|
 * | Protocol Enum | 1                  | 1                  |
 * | Body Length   | 1                  | 1                  |
 * | Body          | 1                  | 255                |
 *
 * @link https://github.com/virtru/nanotdf/blob/master/spec/index.md#3312-kas
 * @link https://github.com/virtru/nanotdf/blob/master/spec/index.md#341-resource-locator
 */
export default class ResourceLocator {
    readonly protocol: ProtocolEnum;
    readonly lengthOfBody: number;
    readonly body: string;
    readonly offset: number;
    static readonly PROTOCOL_OFFSET = 0;
    static readonly PROTOCOL_LENGTH = 1;
    static readonly LENGTH_OFFSET = 1;
    static readonly LENGTH_LENGTH = 1;
    static readonly BODY_OFFSET = 2;
    static parse(url: string): ResourceLocator;
    constructor(buff: Uint8Array);
    /**
     * Length
     *
     * @returns { number } Length of resource locator
     */
    get length(): number;
    get url(): string | never;
    /**
     * Return the contents of the Resource Locator in buffer
     */
    toBuffer(): Uint8Array;
    /**
     * Get URL
     *
     * Construct URL from ResourceLocator or throw error
     */
    getUrl(): string | never;
}
//# sourceMappingURL=ResourceLocator.d.ts.map