import { type Snippet } from '../data/snippet.ts';
import * as wgsl from '../data/wgslTypes.ts';
import type { ResolutionCtx } from '../types.ts';
export declare function getLoopVarKind(elementSnippet: Snippet): "let" | "const";
export declare function getElementSnippet(iterableSnippet: Snippet, index: Snippet): Snippet;
/**
 * Determines the type of the element as accessible inside of the `for .. of` loop body
 */
export declare function getElementType(elementSnippet: Snippet, iterableSnippet: Snippet): wgsl.BaseData;
export declare function getRangeSnippets(ctx: ResolutionCtx, iterableSnippet: Snippet, unroll?: boolean): {
    start: Snippet;
    end: Snippet;
    step: Snippet;
    comparison: '<' | '>';
};
