import { Collection } from 'discord.js'; import type { ShewenyClient } from '../client/Client.js'; import type { BaseStructure } from '../structures/index.js'; import type { Class, Manager, Structure } from '../typescript/index.js'; declare type WithMainProperty = { [P in K]: V; }; declare type StructureType = BaseStructure & WithMainProperty; interface LoaderOptions { instance: Class; manager: Manager; asyncRead?: boolean; } export declare class Loader> { readonly client: ShewenyClient; readonly collection: Collection; readonly mainKey: MKN; readonly mainPath: string; readonly paths: Array; readonly manager: Manager; readonly asyncRead: boolean; readonly instance: Class; constructor(client: ShewenyClient, path: string, mainKey: MKN, options: LoaderOptions); load(dir?: string): Promise>; private absolutePath; private readDirectory; private loadFileStructures; private loadStructure; } export {};