Skip to content

Variable: ResourcefulIndex

ts
const ResourcefulIndex: DefineComponent<ExtractPropTypes<AppendDefault<{
  acl: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ACLProps>;
  };
  actions: {
     default: () => never[];
     type: PropType<(
        | ResourcefulIndexUrlAction
       | ResourcefulIndexFunctionAction)[]>;
     validator: (val: unknown) => val is (ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction)[];
  };
  addColumnButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<AddColumnButtonProps>;
  };
  aggregations: {
     default: () => {
     };
     type: PropType<ResourcefulIndexAggregateOptions>;
  };
  autoRefresh: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<AutoRefreshProps>;
  };
  baseUrl: {
     required: true;
     type: PropType<string>;
  };
  border: (NumberConstructor | StringConstructor | BooleanConstructor)[];
  class: PropType<any>;
  color: StringConstructor;
  computedColumns: {
     default: () => never[];
     type: PropType<ComputedColumnDefinitions>;
  };
  controls: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexControlsPublicProps>;
  };
  dispositionButtons: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<DispositionButtonProps>;
  };
  dispositionDiscardButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<DiscardButtonProps>;
  };
  dispositionSaveButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SaveButtonProps>;
  };
  downloadButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SaveButtonProps>;
  };
  downloadSafeRecordCountThreshold: {
     default: number;
     type: NumberConstructor;
  };
  elevation: {
     type: (NumberConstructor | StringConstructor)[];
     validator: boolean;
  };
  excludeFields: {
     default: () => never[];
     type: PropType<string[]>;
  };
  fieldLabelTerms: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<FieldLabelTermsProps>;
  };
  filters: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexFiltersControlsPublicProps>;
  };
  formatters: {
     default: () => {
     };
     type: PropType<FieldValueFormatters>;
  };
  height: (NumberConstructor | StringConstructor)[];
  initialFields: {
     default: () => never[];
     type: PropType<string[]>;
  };
  initialPerPage: {
     default: number;
     type: PropType<string | number>;
  };
  initialSort: {
     default: () => {
     };
     type: PropType<ResourcefulSortPayload>;
  };
  maxHeight: (NumberConstructor | StringConstructor)[];
  maxWidth: (NumberConstructor | StringConstructor)[];
  metaProgressColor: {
     default: string;
     type: PropType<string>;
  };
  minHeight: (NumberConstructor | StringConstructor)[];
  minWidth: (NumberConstructor | StringConstructor)[];
  pagination: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexPaginationControlsPublicProps>;
  };
  perPageSelector: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<PerPageSelectorPublicProps>;
  };
  position: {
     type: PropType<"absolute" | "fixed" | "static" | "sticky" | "relative">;
     validator: (v: any) => boolean;
  };
  refreshButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<RefreshButtonProps>;
  };
  resourcefulIndexRequestPayloadModifier: {
     default: (payload: ResourcefulIndexRequest) => ResourcefulIndexRequest;
     type: PropType<(payload: ResourcefulIndexRequest) => ResourcefulIndexRequest>;
  };
  rounded: {
     default: undefined;
     type: (NumberConstructor | StringConstructor | BooleanConstructor)[];
  };
  searchField: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SearchFieldProps>;
  };
  state: {
     default: undefined;
     type: PropType<string | null | undefined>;
  };
  style: {
     default: null;
     type: PropType<StyleValue>;
  };
  table: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexTablePublicProps>;
  };
  terms: {
     default: () => {
        refresh: string;
     };
     type: PropType<ResourcefulIndexTerms>;
  };
  theme: StringConstructor;
  tile: BooleanConstructor;
  totals: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<Pick<RecordsTotalProps, "class" | "style" | "numeralFormat">>;
  };
  variant: Omit<{
     default: string;
     type: PropType<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
     validator: (v: any) => boolean;
   }, "type" | "default"> & {
     default: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
     type: PropType<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
  };
  width: {
     default: NonNullable<string | number>;
     type: PropType<string | number>;
  };
}, {
}>>, ResourcefulIndexExposed, {
}, {
}, {
}, ComponentOptionsMixin, ComponentOptionsMixin, EmitFunctions<{
  booted: () => true;
  debug: (...args: any[]) => boolean;
  error: (error: unknown) => true;
  state: (state: string | null | undefined) => boolean;
  update:state: (state: string | null | undefined) => boolean;
}>, string, PublicProps, ToResolvedProps<ExtractPropTypes<AppendDefault<{
  acl: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ACLProps>;
  };
  actions: {
     default: () => never[];
     type: PropType<(
        | ResourcefulIndexUrlAction
       | ResourcefulIndexFunctionAction)[]>;
     validator: (val: unknown) => val is (ResourcefulIndexUrlAction | ResourcefulIndexFunctionAction)[];
  };
  addColumnButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<AddColumnButtonProps>;
  };
  aggregations: {
     default: () => {
     };
     type: PropType<ResourcefulIndexAggregateOptions>;
  };
  autoRefresh: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<AutoRefreshProps>;
  };
  baseUrl: {
     required: true;
     type: PropType<string>;
  };
  border: (NumberConstructor | StringConstructor | BooleanConstructor)[];
  class: PropType<any>;
  color: StringConstructor;
  computedColumns: {
     default: () => never[];
     type: PropType<ComputedColumnDefinitions>;
  };
  controls: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexControlsPublicProps>;
  };
  dispositionButtons: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<DispositionButtonProps>;
  };
  dispositionDiscardButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<DiscardButtonProps>;
  };
  dispositionSaveButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SaveButtonProps>;
  };
  downloadButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SaveButtonProps>;
  };
  downloadSafeRecordCountThreshold: {
     default: number;
     type: NumberConstructor;
  };
  elevation: {
     type: (NumberConstructor | StringConstructor)[];
     validator: boolean;
  };
  excludeFields: {
     default: () => never[];
     type: PropType<string[]>;
  };
  fieldLabelTerms: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<FieldLabelTermsProps>;
  };
  filters: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexFiltersControlsPublicProps>;
  };
  formatters: {
     default: () => {
     };
     type: PropType<FieldValueFormatters>;
  };
  height: (NumberConstructor | StringConstructor)[];
  initialFields: {
     default: () => never[];
     type: PropType<string[]>;
  };
  initialPerPage: {
     default: number;
     type: PropType<string | number>;
  };
  initialSort: {
     default: () => {
     };
     type: PropType<ResourcefulSortPayload>;
  };
  maxHeight: (NumberConstructor | StringConstructor)[];
  maxWidth: (NumberConstructor | StringConstructor)[];
  metaProgressColor: {
     default: string;
     type: PropType<string>;
  };
  minHeight: (NumberConstructor | StringConstructor)[];
  minWidth: (NumberConstructor | StringConstructor)[];
  pagination: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexPaginationControlsPublicProps>;
  };
  perPageSelector: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<PerPageSelectorPublicProps>;
  };
  position: {
     type: PropType<"absolute" | "fixed" | "static" | "sticky" | "relative">;
     validator: (v: any) => boolean;
  };
  refreshButton: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<RefreshButtonProps>;
  };
  resourcefulIndexRequestPayloadModifier: {
     default: (payload: ResourcefulIndexRequest) => ResourcefulIndexRequest;
     type: PropType<(payload: ResourcefulIndexRequest) => ResourcefulIndexRequest>;
  };
  rounded: {
     default: undefined;
     type: (NumberConstructor | StringConstructor | BooleanConstructor)[];
  };
  searchField: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<SearchFieldProps>;
  };
  state: {
     default: undefined;
     type: PropType<string | null | undefined>;
  };
  style: {
     default: null;
     type: PropType<StyleValue>;
  };
  table: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<ResourcefulIndexTablePublicProps>;
  };
  terms: {
     default: () => {
        refresh: string;
     };
     type: PropType<ResourcefulIndexTerms>;
  };
  theme: StringConstructor;
  tile: BooleanConstructor;
  totals: {
     default: () => ExtractPublicDefaultPropTypes<<Defaults>(defaults?: Defaults) => AppendDefault<PropsOptions, Defaults>>;
     type: PropType<Pick<RecordsTotalProps, "class" | "style" | "numeralFormat">>;
  };
  variant: Omit<{
     default: string;
     type: PropType<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
     validator: (v: any) => boolean;
   }, "type" | "default"> & {
     default: NonNullable<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
     type: PropType<"flat" | "text" | "elevated" | "tonal" | "outlined" | "plain">;
  };
  width: {
     default: NonNullable<string | number>;
     type: PropType<string | number>;
  };
}, {
}>>, EmitFunctions<{
  booted: () => true;
  debug: (...args: any[]) => boolean;
  error: (error: unknown) => true;
  state: (state: string | null | undefined) => boolean;
  update:state: (state: string | null | undefined) => boolean;
}>>, {
  acl: {
     canBulkUpdate?: boolean;
     canDownload?: boolean;
  };
  actions: (
     | ResourcefulIndexUrlAction
    | ResourcefulIndexFunctionAction)[];
  addColumnButton: {
     btnColor?: string;
     color?: string;
     disabled?: boolean;
     inOverflowMenu?: boolean;
     noPadding?: boolean;
  };
  aggregations: ResourcefulIndexAggregateOptions;
  autoRefresh: {
     color?: string;
     density?: Density;
     dividePrependIcon?: boolean;
     elevation?: string | number;
     height?: string | number | null;
     size?: "small" | "x-small" | "medium" | "large" | "x-large";
  };
  computedColumns: ComputedColumnDefinitions;
  controls: {
     bulkActionsControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
     bulkUpdateActive?: boolean;
     bulkUpdateControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
     columnControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
     density?: Density;
     divideAppendIcon?: boolean;
     dividePrependIcon?: boolean;
     downloadActive?: boolean;
     downloadControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
     elevation?: string | number;
     filterControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
     height?: string | number | null;
     onBulkActionInvoked?: (action:
        | ResourcefulIndexUrlAction
       | ResourcefulIndexFunctionAction) => void | PromiseLike<void> | Promise<void>;
     onClick:bulkUpdate?: (...args: []) => void;
     onClick:column?: (...args: []) => void;
     onClick:download?: (...args: []) => void;
     onClick:filter?: (...args: []) => void;
     onClick:sorting?: (...args: []) => void;
     overflowMenuButtonOptions?:   | {
        color?: string;
        cta?: string;
        density?: Density;
        size?: "small" | "x-small" | "medium" | "large" | "x-large";
      }
        | {
        color: string;
      };
     size?: "small" | "x-small" | "medium" | "large" | "x-large";
     sortingControlButton?: {
        class?: any;
        color?: string;
        cta?: string;
        inOverflowMenu?: boolean;
        prependIcon?:   | IconValue
           | () => VNode<RendererNode, RendererElement, {
         [key: string]: any;
         }>;
        style?: StyleValue;
        target?: string;
     };
  };
  dispositionButtons: {
     density?: Density;
     dividePrependIcon?: boolean;
     elevation?: string | number;
     height?: string | number | null;
     size?: "small" | "x-small" | "medium" | "large" | "x-large";
  };
  dispositionDiscardButton: {
     color?: string;
     prependIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
  };
  dispositionSaveButton: {
     color?: string;
     prependIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
  };
  downloadButton: {
     color?: string;
     prependIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
  };
  downloadSafeRecordCountThreshold: number;
  excludeFields: string[];
  fieldLabelTerms: {
     filters?: Partial<ResourcefulFieldLabelTerms>;
     general?: ResourcefulFieldLabelTerms;
     headers?: Partial<ResourcefulFieldLabelTerms>;
  };
  filters: {
     iconAnd?: IconValue;
     iconOr?: IconValue;
  };
  formatters: FieldValueFormatters;
  initialFields: string[];
  initialPerPage: string | number;
  initialSort: ResourcefulSortPayload;
  metaProgressColor: string;
  pagination: {
     appearance?: {
        class?: any;
        color?: string;
        density?: Density;
        elevation?: string | number;
        inOverflowMenu?: boolean;
        prependIcon?: IconValue;
        style?: StyleValue;
        target?: string;
     };
     iconLeft?: IconValue;
     iconLeftEnd?: IconValue;
     iconRight?: IconValue;
     iconRightEnd?: IconValue;
     numeralFormat?: string;
  };
  perPageSelector: {
     color?: string;
     density?: Density;
     dividePrependIcon?: boolean;
     elevation?: string | number;
     height?: string | number | null;
     icon?: IconValue;
     numeralFormat?: string;
     size?: "small" | "x-small" | "medium" | "large" | "x-large";
  };
  refreshButton: {
     color?: string;
     density?: Density;
     height?: string | number | null;
     size?: "small" | "x-small" | "medium" | "large" | "x-large";
  };
  resourcefulIndexRequestPayloadModifier: (payload: ResourcefulIndexRequest) => ResourcefulIndexRequest;
  rounded: string | number | boolean;
  searchField: {
     baseColor?: string;
     bgColor?: string;
     class?: any;
     clearable?: boolean;
     color?: string;
     density?: string | null;
     iconColor?: string | boolean;
     label?: string;
     placeholder?: string;
     prependInnerIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
     style?: StyleValue;
     theme?: string;
     type?: string;
     variant?: string;
  };
  state: string | null | undefined;
  style: StyleValue;
  table: {
     actions?: (
        | ResourcefulIndexUrlAction
       | ResourcefulIndexFunctionAction)[];
     addColumnIcon?: IconValue;
     bulkEditingSchema?: ObjectSchema<any>;
     cellProps?: CellProps<any>;
     computedColumns?: ComputedColumnDefinitions;
     density?: Density;
     emptyState?: {
        icon?: IconValue;
        loadingTextTerm?: string;
        noDataTextTerm?: string;
        noDataTitleTerm?: string;
        noResultsTextTerm?: string;
        noResultsTitleTerm?: string;
     };
     errorCode?: string | number;
     formatters?: FieldValueFormatters;
     hover?: boolean;
     onAdd:column?: (...args: [string]) => void;
     onDelete:column?: (...args: [string]) => void;
     onToggle:sorting?: (...args: [string]) => void;
     onUpdate:page?: (...args: [number]) => void;
     onUpdate:perPage?: (...args: [number]) => void;
     onUpdate:selectedItems?: (...args: [any[]]) => void;
     page?: string | number;
     pagination?: {
        appearance?: {
           class?: any;
           color?: string;
           density?: Density;
           elevation?: string | number;
           inOverflowMenu?: boolean;
           prependIcon?: IconValue;
           style?: StyleValue;
           target?: string;
        };
        iconLeft?: IconValue;
        iconLeftEnd?: IconValue;
        iconRight?: IconValue;
        iconRightEnd?: IconValue;
        numeralFormat?: string;
     };
     perPageSelector?: {
        color?: string;
        density?: Density;
        dividePrependIcon?: boolean;
        elevation?: string | number;
        height?: string | number | null;
        icon?: IconValue;
        numeralFormat?: string;
        size?: "small" | "x-small" | "medium" | "large" | "x-large";
     };
     removeColumnIcon?: IconValue;
     rowProps?: RowProps<any>;
     selectedItems?: any[];
     sortAscIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
     sortDescIcon?:   | IconValue
        | () => VNode<RendererNode, RendererElement, {
      [key: string]: any;
      }>;
     sortUnsortedIcon?: IconValue;
     specificFieldOptions?: FieldSpecificOverrideOptions;
     typedFieldOptions?: GeneralFieldOverrideOptions;
  };
  terms: ResourcefulIndexTerms;
  tile: boolean;
  totals: Pick<RecordsTotalProps, "class" | "style" | "numeralFormat">;
  variant: "flat" | "text" | "elevated" | "tonal" | "outlined" | "plain";
  width: string | number;
}, SlotsType<ResourcefulIndexSlots>, {
}, {
}, string, ComponentProvideOptions, true, {
}, any>;