import type { _MDLComponent } from "./MDLComponent.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { simd_float4x4 } from "../structs/simd_float4x4.js";
export interface _MDLTransformComponent extends _MDLComponent {
    setLocalTransform$forTime$?(transform: simd_float4x4, time: number): void;
    /** Resets any timing information, and makes transform valid at all times */
    setLocalTransform$?(transform: simd_float4x4): void;
    /**
     * Returns the transform governing this transformable at the specified time in the transformable's parent's space. If non-animated, all frame values will return the same result.
     */
    localTransformAtTime$?(time: number): simd_float4x4;
    /** The matrix, at minimumTime */
    matrix?(): simd_float4x4;
    setMatrix$?(value: simd_float4x4): void;
    /** if YES, this transform is intended to be in global space, not parent space */
    resetsTransform?(): boolean;
    setResetsTransform$?(value: boolean): void;
    /** If no animation data is present, minimumTime and maximumTime will be zero */
    minimumTime?(): number;
    maximumTime?(): number;
    /**
     * An array of sample times for which a key has been stored If no animation data is present, the array will contain a single value of zero
     */
    keyTimes?(): _NSArray;
}
