importonly class inkVirtualItemTemplateClassifier extends IScriptable
{
}

importonly class inkItemPositionProvider extends IScriptable
{
}

import class inkVirtualCompoundBackgroundController extends inkLogicController
{
}

importonly abstract class inkVirtualCompoundController extends inkDiscreteNavigationController
{
	public import function SetSource( source : weak< AbstractDataSource > );
	public import function GetSelectedItem() : weak< inkVirtualCompoundItemController >;
	public import function GetToggledItem() : weak< inkVirtualCompoundItemController >;
	public import function SetClassifier( classifier : weak< inkVirtualItemTemplateClassifier > );
	public import function SelectItem( index : Uint32, optional discreteNav : Bool );
	public import function UnSelectCurrentItem();
	public import function ToggleItem( index : Uint32 );
	public import function UnToggleCurrentItem();
	public import function ScrollToIndex( index : Uint32 );
	public import function GetSelectedIndex() : Uint32;
	public import function GetToggledIndex() : Uint32;
}

import class inkVirtualUniformListController extends inkVirtualCompoundController
{
}

import class inkVirtualUniformGridController extends inkVirtualUniformListController
{
}

import class inkVirtualListController extends inkVirtualCompoundController
{
}

import class inkVirtualGridController extends inkVirtualListController
{
}

import class inkGridController extends inkVirtualCompoundController
{
	public import function SetProvider( classifier : weak< inkItemPositionProvider > );
	public import function GetIndexFromCoords( x : Uint32, y : Uint32 ) : Uint32;
	public import function RemoveItemFromSlot( slotIdx : Uint32 ) : weak< inkWidget >;
	public import function PlaceItemInSlot( item : weak< inkWidget >, slotIdx : Uint32 );
	public import function GetSlotIndex( position : Vector2 ) : Uint32;
	public import function GetItemIndexFromSlot( slotIndex : Uint32 ) : Uint32;
	public import function GetItemWidget( itemIndex : Uint32 ) : weak< inkWidget >;
	public import function GetItemData( itemIndex : Uint32 ) : Variant;
	public import function GetItemPosition( itemIndex : Uint32 ) : Vector2;
	public import function GetItemSize( itemIndex : Uint32 ) : Vector2;
}

