import { Entity, FallbackStrategy, User, Channel } from "./index"; import { EntityExtensionConstructor, ApplyExtensions } from "@replikit/storage/typings"; import { CommandContext } from "@replikit/commands/typings"; export declare const CacheResult: MethodDecorator; export declare const Memoize: MethodDecorator; export declare function loadExtensions(type: T, ...extensions: E): asserts type is ApplyExtensions; export declare function currentUser(context: CommandContext): Promise; export declare function currentChannel(context: CommandContext): Promise; export declare function extractArguments(args: unknown[], defaultStrategy: FallbackStrategy): [FallbackStrategy, EntityExtensionConstructor[]]; export declare function setCachedResult(obj: T, prop: K, value: unknown): void;