import { $gpuValueOf, $internal, $resolve } from '../../shared/symbols.ts';
import type { LayoutMembership } from '../../tgpuBindGroupLayout.ts';
import { type WgslExternalTexture } from '../../data/texture.ts';
import type { ResolutionCtx, SelfResolvable } from '../../types.ts';
import { type ResolvedSnippet } from '../../data/snippet.ts';
import type { Infer } from '../../shared/repr.ts';
export interface TgpuExternalTexture {
    readonly resourceType: 'external-texture';
}
export declare function isExternalTexture(value: unknown): value is TgpuExternalTexture;
export declare class TgpuExternalTextureImpl implements TgpuExternalTexture, SelfResolvable {
    #private;
    readonly resourceType = "external-texture";
    readonly [$internal] = true;
    readonly schema: WgslExternalTexture;
    constructor(schema: WgslExternalTexture, membership: LayoutMembership);
    [$resolve](ctx: ResolutionCtx): ResolvedSnippet;
    get [$gpuValueOf](): Infer<WgslExternalTexture>;
    get $(): Infer<WgslExternalTexture>;
    toString(): string;
}
