import { type ResourceType } from './resource-type.js';
export declare abstract class ResourceName {
    readonly name: string;
    protected constructor(type: ResourceType, name: string);
    /**
     * Returns true if the pod name is valid.  A Kubernetes pod name must be a valid RFC-1123 DNS label.
     *
     * @include DNS_1123_LABEL
     *
     * @returns true if the pod name is valid.
     * @throws InvalidResourceNameError if the pod name is invalid.
     */
    private isValid;
    /**
     * Compares this instance with another PodName.
     * @param other The other PodName instance.
     * @returns true if both instances have the same name.
     */
    equals(other: ResourceName): boolean;
    /**
     * Allows implicit conversion to a string.
     * @returns The pod name as a string.
     */
    toString(): string;
    /**
     * Allows `PodName` to be used as a primitive string in operations.
     */
    [Symbol.toPrimitive](_hint: string): string;
    /**
     * Returns the primitive value of the object.
     */
    valueOf(): string;
}
